/*
 * Adios Radar pages: same blocky, flat look as the rest of Adios (square blocks, thin rules, a 3px accent bar,
 * Archivo headlines). Risk is the colour of a card's top bar; a withdrawn notice turns green.
 */

.tracker-page {
    --tracker-ink: var(--news-ink, #111827);
    --tracker-soft: var(--news-soft-ink, #374151);
    --tracker-muted: var(--muted, #667085);
    --tracker-rule: var(--news-rule, #dfe3e8);
    --tracker-rule-strong: var(--news-rule-strong, #c9d0d8);
    --tracker-accent: var(--news-accent, #b42318);
    --tracker-serious: #b42318;
    --tracker-high: #c4320a;
    --tracker-medium: #b54708;
    --tracker-low: #667085;
    --tracker-good: #067647;
    --tracker-children: #6941c6;
    --tracker-risk: var(--tracker-low);
}

.tracker-page .is-serious { --tracker-risk: var(--tracker-serious); }
.tracker-page .is-high { --tracker-risk: var(--tracker-high); }
.tracker-page .is-medium { --tracker-risk: var(--tracker-medium); }
.tracker-page .is-low,
.tracker-page .is-unknown { --tracker-risk: var(--tracker-low); }
.tracker-page .is-cancelled { --tracker-risk: var(--tracker-good); }

.tracker-shell {
    display: grid;
    gap: 1.25rem;
    color: var(--tracker-ink);
}

.tracker-shell h1,
.tracker-shell h2,
.tracker-shell h3 {
    color: var(--tracker-ink);
    letter-spacing: -0.01em;
}

/* ---------- Breadcrumb and language ---------- */

.tracker-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem 0.5rem;
    color: var(--tracker-muted);
    font-size: 0.86rem;
    font-weight: 700;
}

.tracker-breadcrumb a {
    color: var(--tracker-accent);
    text-decoration: none;
}

.tracker-breadcrumb strong {
    color: var(--tracker-ink);
}

.tracker-breadcrumb .tracker-language {
    margin-left: auto;
    padding: 0.2rem 0.6rem;
    border: 1px solid var(--tracker-rule-strong);
    color: var(--tracker-ink);
    background: #ffffff;
    font-size: 0.8rem;
}

/* ---------- Hub hero ---------- */

.tracker-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(16rem, 22rem);
    gap: 1.5rem;
    align-items: center;
    padding: clamp(1.1rem, 2.5vw, 2rem);
    border: 1px solid var(--tracker-rule-strong);
    border-top: 3px solid var(--tracker-accent);
    background: #ffffff;
}

.tracker-hero h1 {
    margin: 0;
    font-size: clamp(2rem, 4.2vw, 3.1rem);
    font-weight: 850;
    line-height: 1.04;
}

.tracker-hero-copy > p:not(.eyebrow) {
    max-width: 46rem;
    margin: 0.75rem 0 0;
    color: var(--tracker-soft);
    font-size: clamp(1rem, 1.5vw, 1.15rem);
    line-height: 1.55;
}

.tracker-hero-actions,
.tracker-list-heading-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    margin-top: 1rem;
}

.tracker-stat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.6rem;
    margin: 0;
}

.tracker-stat-grid div {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: 0.25rem;
    min-height: 6.2rem;
    padding: 0.8rem 0.5rem;
    border: 1px solid var(--tracker-rule);
    background: #f8f9fa;
    text-align: center;
}

.tracker-stat-grid dt {
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1.2;
    text-transform: uppercase;
}

.tracker-stat-grid dd {
    margin: 0;
    color: var(--tracker-ink);
    font-family: var(--news-font-head, inherit);
    font-size: clamp(1.5rem, 2.4vw, 2.1rem);
    font-weight: 850;
    line-height: 1;
}

.tracker-stat-grid div:last-child dd {
    color: var(--tracker-children);
}

/* ---------- Search ---------- */

.tracker-search,
.tracker-filters-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-top: 1.1rem;
    border: 1px solid var(--tracker-rule-strong);
    background: #ffffff;
}

.tracker-filters-search {
    margin-top: 0;
}

.tracker-search input,
.tracker-filters-search input {
    min-width: 0;
    min-height: 3rem;
    padding: 0.7rem 0.9rem;
    border: 0;
    color: var(--tracker-ink);
    background: transparent;
    font-size: 1rem;
    font-weight: 600;
    outline: none;
}

.tracker-search:focus-within,
.tracker-filters-search:focus-within {
    border-color: var(--tracker-ink);
}

.tracker-search button,
.tracker-filters-search button {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0 1.1rem;
    border: 0;
    color: #ffffff;
    background: var(--tracker-accent);
    font-weight: 800;
}

.tracker-search button:hover,
.tracker-filters-search button:hover {
    background: var(--accent-dark, #891b14);
}

/* ---------- Buttons ---------- */

.tracker-notify-button,
.tracker-outline-button {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 2.6rem;
    padding: 0.5rem 0.95rem;
    border: 1px solid var(--tracker-ink);
    font-size: 0.92rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.tracker-notify-button {
    color: #ffffff;
    background: var(--tracker-ink);
}

.tracker-notify-button.is-on {
    border-color: var(--tracker-good);
    background: var(--tracker-good);
}

.tracker-notify-button:hover,
.tracker-notify-button:focus-visible {
    background: #000000;
}

.tracker-outline-button {
    color: var(--tracker-ink);
    background: #ffffff;
}

.tracker-outline-button:hover,
.tracker-outline-button:focus-visible {
    color: var(--tracker-ink);
    background: #f3f4f6;
}

/* ---------- Categories ---------- */

.tracker-category-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.tracker-category-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.75rem;
    border: 1px solid var(--tracker-rule-strong);
    color: var(--tracker-ink);
    background: #ffffff;
    font-size: 0.88rem;
    font-weight: 750;
    text-decoration: none;
}

.tracker-category-chip i {
    color: var(--tracker-accent);
}

.tracker-category-chip.is-children i {
    color: var(--tracker-children);
}

.tracker-category-chip small {
    color: var(--tracker-muted);
    font-size: 0.76rem;
    font-weight: 800;
}

.tracker-category-chip:hover,
.tracker-category-chip:focus-visible {
    border-color: var(--tracker-ink);
    color: var(--tracker-ink);
}

/* ---------- Sections and cards ---------- */

.tracker-section {
    display: grid;
    gap: 0.9rem;
}

.tracker-section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 0.55rem;
    border-bottom: 2px solid var(--tracker-ink);
}

.tracker-section-heading h2 {
    margin: 0;
    font-size: clamp(1.2rem, 2vw, 1.5rem);
}

.tracker-section-heading a {
    color: var(--tracker-accent);
    font-size: 0.88rem;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.tracker-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 18.5rem), 1fr));
    gap: 1rem;
}

.tracker-grid.is-compact {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
}

.tracker-card {
    display: flex;
    border: 1px solid var(--tracker-rule);
    border-top: 3px solid var(--tracker-risk);
    background: #ffffff;
}

.tracker-card-link {
    display: grid;
    grid-template-rows: auto 1fr;
    width: 100%;
    color: var(--tracker-ink);
    text-decoration: none;
}

.tracker-card-link:hover h3,
.tracker-card-link:focus-visible h3 {
    color: var(--tracker-accent);
}

.tracker-card-media {
    position: relative;
    display: grid;
    place-items: center;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #f2f4f7;
}

.tracker-card-media img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #ffffff;
}

.tracker-card-media.is-icon {
    background: color-mix(in srgb, var(--tracker-risk) 7%, #ffffff);
}

.tracker-card-media.is-icon i {
    color: color-mix(in srgb, var(--tracker-risk) 75%, #ffffff);
    font-size: 2.6rem;
}

.tracker-card-type {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0.25rem 0.55rem;
    color: #ffffff;
    background: var(--tracker-risk);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.tracker-card-body {
    display: grid;
    align-content: start;
    gap: 0.45rem;
    padding: 0.8rem 0.9rem 0.9rem;
}

.tracker-card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.tracker-card-body h3 {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    font-size: 1.06rem;
    font-weight: 800;
    line-height: 1.25;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.tracker-card-body p {
    display: -webkit-box;
    margin: 0;
    overflow: hidden;
    color: var(--tracker-soft);
    font-size: 0.9rem;
    line-height: 1.45;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

.tracker-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.2rem 0.7rem;
    margin-top: 0.15rem;
    color: var(--tracker-muted);
    font-size: 0.78rem;
    font-weight: 700;
}

.tracker-card.is-cancelled h3 {
    text-decoration: line-through;
    text-decoration-color: color-mix(in srgb, var(--tracker-good) 60%, transparent);
}

.tracker-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.18rem 0.5rem;
    border: 1px solid var(--tracker-rule);
    color: var(--tracker-soft);
    background: #f8f9fa;
    font-size: 0.74rem;
    font-weight: 750;
    line-height: 1.3;
    text-decoration: none;
}

a.tracker-chip:hover,
a.tracker-chip:focus-visible {
    border-color: var(--tracker-ink);
    color: var(--tracker-ink);
}

.tracker-chip i {
    color: var(--tracker-accent);
}

.tracker-chip.is-children {
    border-color: color-mix(in srgb, var(--tracker-children) 35%, #ffffff);
    color: var(--tracker-children);
    background: color-mix(in srgb, var(--tracker-children) 7%, #ffffff);
}

.tracker-chip.is-children i {
    color: var(--tracker-children);
}

.tracker-chip.is-store {
    padding: 0.35rem 0.65rem;
    color: var(--tracker-ink);
    background: #ffffff;
    font-size: 0.86rem;
}

/* ---------- List page ---------- */

.tracker-list-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--tracker-rule-strong);
}

.tracker-list-heading h1 {
    margin: 0;
    font-size: clamp(1.8rem, 3.6vw, 2.6rem);
    font-weight: 850;
    line-height: 1.08;
}

.tracker-list-heading p:not(.eyebrow) {
    max-width: 52rem;
    margin: 0.5rem 0 0;
    color: var(--tracker-soft);
}

.tracker-list-heading-actions {
    flex: 0 0 auto;
    margin-top: 0;
}

.tracker-filters {
    display: grid;
    gap: 0.75rem;
    padding: 0.9rem;
    border: 1px solid var(--tracker-rule-strong);
    background: #ffffff;
}

.tracker-filters-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr)) auto;
    gap: 0.6rem;
    align-items: end;
}

.tracker-filters-row label {
    display: grid;
    gap: 0.25rem;
    min-width: 0;
    margin: 0;
}

.tracker-filters-row label > span {
    color: var(--tracker-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.tracker-filters-row select {
    width: 100%;
    min-height: 2.5rem;
    padding: 0.4rem 0.55rem;
    border: 1px solid var(--tracker-rule-strong);
    color: var(--tracker-ink);
    background: #ffffff;
    font-size: 0.9rem;
    font-weight: 650;
}

.tracker-filters-row .tracker-filter-check {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.5rem;
    padding: 0 0.7rem;
    border: 1px solid var(--tracker-rule-strong);
    color: var(--tracker-children);
    font-size: 0.86rem;
    font-weight: 800;
    white-space: nowrap;
    cursor: pointer;
}

.tracker-filters-row .tracker-filter-check span {
    color: inherit;
    font-size: inherit;
    text-transform: none;
}

.tracker-filters-summary {
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.92rem;
}

.tracker-filters-summary a {
    color: var(--tracker-accent);
    font-weight: 800;
}

.tracker-empty {
    display: grid;
    justify-items: center;
    gap: 0.4rem;
    padding: 2.5rem 1rem;
    border: 1px dashed var(--tracker-rule-strong);
    background: #ffffff;
    text-align: center;
}

.tracker-empty i {
    color: var(--tracker-good);
    font-size: 2rem;
}

.tracker-empty h2 {
    margin: 0;
    font-size: 1.25rem;
}

.tracker-empty p {
    margin: 0;
    color: var(--tracker-muted);
}

.tracker-list-nav {
    display: grid;
    justify-items: center;
    gap: 0.75rem;
}

.tracker-pagination {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-weight: 800;
}

.tracker-pagination ol {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.tracker-pagination a,
.tracker-pagination [aria-current="page"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-width: 2.5rem;
    min-height: 2.5rem;
    padding: 0 0.8rem;
    border: 1px solid var(--tracker-rule-strong, #c9d0d8);
    color: var(--tracker-ink);
    background: #ffffff;
    font-variant-numeric: tabular-nums;
    text-decoration: none;
}

.tracker-pagination a:hover,
.tracker-pagination a:focus-visible {
    border-color: var(--tracker-ink);
    color: var(--tracker-accent, #b42318);
}

.tracker-pagination [aria-current="page"] {
    border-color: var(--tracker-ink);
    color: #ffffff;
    background: var(--tracker-ink);
}

.tracker-page-step {
    border-color: var(--tracker-ink) !important;
}

.tracker-page-gap {
    display: inline-flex;
    align-items: flex-end;
    min-height: 2.5rem;
    padding: 0 0.15rem 0.45rem;
    color: var(--tracker-muted, #5b6573);
}

/* Hub: under the newest notices, the way to all of them. */
.tracker-section-more {
    display: flex;
    justify-content: center;
    margin-top: 1.25rem;
}

.tracker-more-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    min-height: 2.9rem;
    padding: 0 1.4rem;
    border: 1px solid var(--tracker-ink);
    color: #ffffff !important;
    background: var(--tracker-ink);
    font-weight: 800;
    text-decoration: none;
}

.tracker-more-button:hover,
.tracker-more-button:focus-visible {
    border-color: var(--tracker-accent, #b42318);
    background: var(--tracker-accent, #b42318);
}

@media (max-width: 575.98px) {
    .tracker-more-button {
        width: 100%;
    }
}

/* "Učitaj još": phones only, once tracker.js is running; then the numbered pages are hidden there. */
.tracker-load-more {
    display: none;
    flex-direction: column;
    align-items: center;
    gap: 0.15rem;
    width: 100%;
    padding: 0.8rem 1rem;
    border: 1px solid var(--tracker-ink);
    color: #ffffff;
    background: var(--tracker-ink);
    font-weight: 800;
}

.tracker-load-more small {
    color: rgba(255, 255, 255, 0.75);
    font-size: 0.78rem;
    font-weight: 600;
}

.tracker-load-more:hover,
.tracker-load-more:focus-visible {
    background: var(--tracker-accent, #b42318);
    border-color: var(--tracker-accent, #b42318);
}

.tracker-load-more[aria-busy="true"] {
    opacity: 0.7;
    cursor: progress;
}

@media (max-width: 767.98px) {
    .tracker-list-nav.is-enhanced .tracker-pagination {
        display: none;
    }

    .tracker-list-nav.is-enhanced .tracker-load-more {
        display: flex;
    }

    .tracker-page-step span {
        display: none;
    }
}

/* ---------- Entry page ---------- */

.tracker-banner {
    display: flex;
    gap: 0.8rem;
    align-items: flex-start;
    padding: 0.85rem 1rem;
    border: 1px solid color-mix(in srgb, var(--tracker-good) 40%, #ffffff);
    border-left: 4px solid var(--tracker-good);
    background: color-mix(in srgb, var(--tracker-good) 6%, #ffffff);
}

.tracker-banner i {
    color: var(--tracker-good);
    font-size: 1.3rem;
}

.tracker-banner div {
    display: grid;
    gap: 0.15rem;
}

.tracker-banner strong {
    color: var(--tracker-good);
    font-size: 0.8rem;
    text-transform: uppercase;
}

.tracker-banner a {
    color: var(--tracker-ink);
    font-weight: 800;
}

.tracker-entry-header {
    display: grid;
    gap: 0.75rem;
    padding: clamp(1rem, 2.4vw, 1.75rem);
    border: 1px solid var(--tracker-rule-strong);
    border-top: 4px solid var(--tracker-risk);
    background: #ffffff;
}

.tracker-entry-badges {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
}

.tracker-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.22rem 0.6rem;
    font-size: 0.76rem;
    font-weight: 850;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.tracker-badge.is-type {
    color: #ffffff;
    background: var(--tracker-risk);
}

.tracker-badge.is-risk {
    border: 1px solid color-mix(in srgb, var(--tracker-risk) 40%, #ffffff);
    color: var(--tracker-risk);
    background: color-mix(in srgb, var(--tracker-risk) 6%, #ffffff);
}

.tracker-risk-dot {
    width: 0.55rem;
    height: 0.55rem;
    border-radius: 50%;
    background: var(--tracker-risk);
}

.tracker-entry-header h1 {
    margin: 0;
    font-size: clamp(1.7rem, 3.6vw, 2.6rem);
    font-weight: 850;
    line-height: 1.1;
}

.tracker-entry.is-cancelled .tracker-entry-header h1 {
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: color-mix(in srgb, var(--tracker-good) 55%, transparent);
}

.tracker-entry-lead {
    margin: 0;
    color: var(--tracker-soft);
    font-size: clamp(1.02rem, 1.6vw, 1.2rem);
    line-height: 1.55;
}

.tracker-entry-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 1.1rem;
    padding-top: 0.7rem;
    border-top: 1px solid var(--tracker-rule);
    color: var(--tracker-muted);
    font-size: 0.86rem;
    font-weight: 650;
}

.tracker-entry-meta a {
    color: var(--tracker-accent);
    font-weight: 800;
}

.tracker-entry-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(16rem, 21rem);
    gap: 1.25rem;
    align-items: start;
}

.tracker-entry-main,
.tracker-entry-side {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.tracker-entry-side {
    position: sticky;
    top: 1rem;
}

.tracker-entry-figure {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    padding: 0.75rem;
    border: 1px solid var(--tracker-rule);
    background: #ffffff;
}

.tracker-entry-figure > img {
    width: 100%;
    max-height: 26rem;
    object-fit: contain;
}

.tracker-entry-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.tracker-entry-thumbs img {
    width: 6rem;
    height: 4.5rem;
    border: 1px solid var(--tracker-rule);
    object-fit: cover;
}

.tracker-entry-figure figcaption {
    color: var(--tracker-muted);
    font-size: 0.78rem;
}

.tracker-facts {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr));
    gap: 0.75rem;
}

.tracker-fact {
    display: grid;
    gap: 0.3rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--tracker-rule);
    border-left: 3px solid var(--tracker-risk);
    background: #ffffff;
}

.tracker-fact.is-advice {
    border-left-color: var(--tracker-ink);
}

.tracker-fact span {
    color: var(--tracker-muted);
    font-size: 0.74rem;
    font-weight: 850;
    text-transform: uppercase;
}

.tracker-fact strong {
    font-size: 1.02rem;
    font-weight: 750;
    line-height: 1.4;
}

.tracker-block {
    padding: clamp(0.9rem, 2vw, 1.25rem);
    border: 1px solid var(--tracker-rule);
    background: #ffffff;
}

.tracker-block h2 {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin: 0 0 0.75rem;
    font-size: 1.2rem;
}

.tracker-block h2 small {
    padding: 0.05rem 0.45rem;
    color: #ffffff;
    background: var(--tracker-ink);
    font-size: 0.74rem;
}

.tracker-products {
    display: grid;
    gap: 0.6rem;
}

.tracker-product {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr);
    gap: 0.4rem 1rem;
    padding: 0.7rem 0;
    border-top: 1px solid var(--tracker-rule);
}

.tracker-product:first-child {
    padding-top: 0;
    border-top: 0;
}

.tracker-product-name {
    display: grid;
    gap: 0.15rem;
}

.tracker-product-name span {
    color: var(--tracker-muted);
    font-size: 0.84rem;
}

.tracker-product dl {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr));
    gap: 0.4rem 0.8rem;
    margin: 0;
}

.tracker-product dt {
    color: var(--tracker-muted);
    font-size: 0.7rem;
    font-weight: 850;
    text-transform: uppercase;
}

.tracker-product dd {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    margin: 0;
    font-size: 0.9rem;
    font-weight: 650;
}

.tracker-product code {
    padding: 0.08rem 0.35rem;
    border: 1px solid var(--tracker-rule);
    color: var(--tracker-ink);
    background: #f8f9fa;
    font-size: 0.84rem;
    font-weight: 700;
    user-select: all;
}

.tracker-body p {
    margin: 0 0 0.85rem;
    font-size: 1.02rem;
    line-height: 1.7;
}

.tracker-body p:last-child {
    margin-bottom: 0;
}

.tracker-link-line {
    margin: 0.3rem 0;
    font-size: 0.94rem;
}

.tracker-link-line a {
    color: var(--tracker-ink);
    font-weight: 800;
}

.tracker-source-box {
    display: grid;
    gap: 0.4rem;
    justify-items: start;
    padding: 1rem;
    border: 1px solid var(--tracker-rule-strong);
    border-left: 3px solid var(--tracker-ink);
    background: #f8f9fa;
}

.tracker-source-box > span {
    color: var(--tracker-muted);
    font-size: 0.74rem;
    font-weight: 850;
    text-transform: uppercase;
}

.tracker-disclaimer {
    margin: 0.25rem 0 0;
    color: var(--tracker-muted);
    font-size: 0.82rem;
    line-height: 1.45;
}

.tracker-side-block {
    display: grid;
    gap: 0.6rem;
    padding: 1rem;
    border: 1px solid var(--tracker-rule);
    background: #ffffff;
}

.tracker-side-block h2 {
    margin: 0;
    font-size: 0.82rem;
    font-weight: 850;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.tracker-store-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.tracker-companies {
    display: grid;
    gap: 0.55rem;
    margin: 0;
}

.tracker-companies dt {
    color: var(--tracker-muted);
    font-size: 0.7rem;
    font-weight: 850;
    text-transform: uppercase;
}

.tracker-companies dd {
    margin: 0;
    font-size: 0.9rem;
    font-weight: 650;
    line-height: 1.35;
}

/* The notification box stays away until the script has shown its button. */
.tracker-side-notify:has(> .tracker-notify-button[hidden]) {
    display: none;
}

.tracker-side-notify .tracker-notify-button {
    justify-content: center;
    width: 100%;
}

/* ---------- Sources ---------- */

.tracker-sources {
    padding: 1rem 1.1rem;
    border: 1px solid var(--tracker-rule);
    background: #ffffff;
}

.tracker-sources h2 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.4rem;
    font-size: 1rem;
}

.tracker-sources p {
    margin: 0 0 0.4rem;
    color: var(--tracker-soft);
    font-size: 0.9rem;
}

.tracker-sources ul {
    margin: 0 0 0.4rem;
    padding-left: 1.1rem;
}

.tracker-sources a {
    color: var(--tracker-accent);
    font-weight: 800;
}

/* ---------- Notification dialog ---------- */

.tracker-notify-modal .modal-title {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.2rem;
}

.tracker-notify-all {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.55rem 0.7rem;
    border: 1px solid var(--tracker-ink, #111827);
    font-weight: 800;
}

.tracker-notify-categories {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: 0.4rem;
    margin-top: 0.6rem;
}

.tracker-notify-categories label {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.45rem 0.6rem;
    border: 1px solid var(--tracker-rule, #dfe3e8);
    font-size: 0.88rem;
    font-weight: 650;
    cursor: pointer;
}

.tracker-notify-categories label.is-children {
    color: var(--tracker-children, #6941c6);
}

.tracker-notify-status {
    min-height: 1.2rem;
    margin: 0.75rem 0 0;
    font-size: 0.88rem;
    font-weight: 700;
}

.tracker-notify-status.is-error {
    color: var(--tracker-serious, #b42318);
}

.tracker-notify-status.is-ok {
    color: var(--tracker-good, #067647);
}

/* ---------- Phones and tablets ---------- */

@media (max-width: 991.98px) {
    .tracker-hero,
    .tracker-entry-layout {
        grid-template-columns: minmax(0, 1fr);
    }

    .tracker-entry-side {
        position: static;
    }

    .tracker-filters-row {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .tracker-list-heading {
        flex-direction: column;
        align-items: stretch;
    }
}

@media (max-width: 575.98px) {
    .tracker-shell {
        gap: 1rem;
    }

    .tracker-stat-grid div {
        min-height: 4.8rem;
    }

    .tracker-filters {
        padding: 0.7rem;
    }

    .tracker-filters-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tracker-filters-row .tracker-filter-check {
        grid-column: 1 / -1;
        justify-content: center;
    }

    .tracker-search button span,
    .tracker-filters-search button span {
        display: none;
    }

    .tracker-product {
        grid-template-columns: minmax(0, 1fr);
    }

    .tracker-breadcrumb .tracker-language {
        margin-left: 0;
    }

    .tracker-hero-actions > *,
    .tracker-list-heading-actions > * {
        flex: 1 1 auto;
        justify-content: center;
    }
}

/* ---------- Information pages ---------- */

.tracker-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr));
    gap: 1rem;
}

.tracker-info .tracker-block p,
.tracker-info .tracker-block li {
    line-height: 1.6;
}

.tracker-info .tracker-category-strip + p {
    margin-top: 0.9rem;
}

.tracker-info .tracker-block h3 {
    margin: 1rem 0 0.5rem;
    font-size: 0.95rem;
}

.tracker-info .tracker-block a {
    color: var(--tracker-accent);
    font-weight: 800;
}

.tracker-steps {
    display: grid;
    gap: 0.6rem;
    margin: 0;
    padding-left: 1.3rem;
}

.tracker-faq details {
    padding: 0.7rem 0;
    border-top: 1px solid var(--tracker-rule);
}

.tracker-faq details:first-of-type {
    border-top: 0;
}

.tracker-faq summary {
    font-weight: 800;
    cursor: pointer;
}

.tracker-faq details p {
    margin: 0.5rem 0 0;
    color: var(--tracker-soft);
}

.tracker-guide {
    display: grid;
    gap: 0.75rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.tracker-guide li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.tracker-guide h2 {
    margin: 0 0 0.35rem;
    font-size: 1.15rem;
}

.tracker-guide p {
    margin: 0;
}

.tracker-guide-number {
    display: grid;
    place-items: center;
    width: 2.4rem;
    height: 2.4rem;
    color: #ffffff;
    background: var(--tracker-accent);
    font-family: var(--news-font-head, inherit);
    font-size: 1.2rem;
    font-weight: 850;
}

.tracker-info-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 1.2rem;
    margin: 0.4rem 0 0;
    font-size: 0.9rem;
    font-weight: 800;
}

.tracker-info-links a {
    color: var(--tracker-accent);
}

/* ---------- Entry page, administrators: push this notice ---------- */

.tracker-admin-push {
    display: grid;
    gap: 0.6rem;
    margin-top: 1.25rem;
    padding: 1rem 1.1rem;
    border: 1px dashed var(--tracker-rule-strong);
    border-left: 4px solid var(--tracker-ink);
    background: #f8fafc;
}

.tracker-admin-push h2 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    font-size: 1.05rem;
    font-weight: 800;
}

.tracker-admin-push h2 span {
    padding: 0.1rem 0.4rem;
    color: #ffffff;
    background: var(--tracker-ink);
    font-size: 0.68rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.tracker-admin-push p {
    margin: 0;
    color: var(--tracker-soft);
    font-size: 0.9rem;
}

.tracker-admin-push form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.tracker-admin-push input {
    flex: 1 1 18rem;
    min-width: 0;
    min-height: 2.6rem;
    padding: 0 0.75rem;
    border: 1px solid var(--tracker-rule-strong);
    border-radius: 0;
    font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
    font-size: 0.85rem;
}

.tracker-admin-push button {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 2.6rem;
    padding: 0 1rem;
    border: 1px solid var(--tracker-ink);
    color: #ffffff;
    background: var(--tracker-ink);
    font-weight: 800;
}

.tracker-admin-push button:disabled {
    opacity: 0.6;
}

.tracker-admin-push-result:empty {
    display: none;
}

.tracker-admin-push-result.is-ok {
    color: var(--tracker-good) !important;
    font-weight: 700;
}

.tracker-admin-push-result.is-error {
    color: var(--tracker-serious) !important;
    font-weight: 700;
}

.tracker-admin-push-office {
    justify-self: start;
    font-size: 0.85rem;
    font-weight: 700;
}

/* Where a notice comes from: a national authority, or an EU alert system (blue, like the EU). */
.tracker-chip.is-source {
    color: var(--tracker-soft);
    background: #ffffff;
    font-weight: 700;
}

.tracker-chip.is-source.is-eu {
    border-color: #b8c7ec;
    color: #1d3f8f;
    background: #eef3fd;
}
