/* Community roadmap UI */
.community-hero {
    background: linear-gradient(135deg, #e8f9ff 0%, #f5fcff 100%);
    border: 1px solid #c5e8f5;
    border-radius: 12px;
    padding: 1.25rem 1rem 1rem;
    margin: 0 0 1.25rem;
}
.community-hero h1 {
    margin: 0 0 .35rem;
    font-size: 1.35rem;
    line-height: 1.25;
}
.community-hero p {
    margin: 0 0 .75rem;
    color: #444;
    line-height: 1.45;
}
.community-hero-search-hint {
    font-size: .9rem;
    color: #666;
}
.community-section {
    margin: 1.5rem 0;
}
.community-section h2 {
    font-size: 1.1rem;
    margin: 0 0 .75rem;
}
.community-live-feed,
.community-radar-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.community-live-feed-item,
.community-radar-item {
    border: 1px solid #e6e6e6;
    border-radius: 8px;
    padding: .65rem .75rem;
    margin-bottom: .5rem;
    display: grid;
    gap: .2rem;
}
.community-live-feed-top {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
}
.community-live-feed-nummer {
    font-weight: 700;
    color: #007a9e;
}
.community-live-feed-badge {
    font-size: .75rem;
    padding: .1rem .45rem;
    border-radius: 999px;
    background: #eef8fc;
}
.community-live-feed-snippet {
    color: #333;
    line-height: 1.35;
}
.community-radar-confidence {
    font-size: .8rem;
    color: #666;
}
.community-empty {
    color: #666;
    font-style: italic;
}
.community-insights {
    border-radius: 10px;
    padding: 1rem;
    margin: 1rem 0;
    border: 1px solid #ddd;
}
.community-insights--danger { border-color: #e8b4b4; background: #fff5f5; }
.community-insights--warn { border-color: #ecd9a8; background: #fffaf0; }
.community-insights--safe { border-color: #b9e0c4; background: #f4fff7; }
.community-insights--neutral { border-color: #d8e8ef; background: #f8fcfe; }
.community-insights h2 { margin-top: 0; font-size: 1.15rem; }
.community-insights-signal { font-weight: 600; margin: 0 0 .75rem; }
.community-insights-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: .5rem;
    margin: 0 0 .75rem;
}
.community-insights-stats div {
    background: rgba(255,255,255,.65);
    border-radius: 6px;
    padding: .45rem .55rem;
}
.community-insights-stats dt {
    font-size: .75rem;
    color: #666;
    margin: 0;
}
.community-insights-stats dd {
    margin: .15rem 0 0;
    font-weight: 700;
}
.community-action-advice ul {
    margin: .35rem 0 0;
    padding-left: 1.1rem;
}
.community-method-note {
    font-size: .85rem;
    color: #666;
    margin: .75rem 0 0;
}
.community-report-intro {
    color: #444;
}
.community-step {
    border: 0;
    margin: 0 0 1rem;
    padding: 0;
}
.community-step[hidden] { display: none !important; }
.community-step legend {
    font-weight: 700;
    margin-bottom: .5rem;
}
.community-step-num {
    display: inline-flex;
    width: 1.4rem;
    height: 1.4rem;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: #00a5dc;
    color: #fff;
    font-size: .8rem;
    margin-right: .35rem;
}
.community-chip-grid,
.community-risk-grid {
    display: grid;
    gap: .45rem;
}
.community-chip-grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); }
.community-risk-grid { grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); }
.community-chip,
.community-risk {
    display: block;
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    padding: .55rem .65rem;
    cursor: pointer;
}
.community-chip input,
.community-risk input {
    margin-right: .35rem;
}
.community-chip:has(input:checked),
.community-risk:has(input:checked) {
    border-color: #00a5dc;
    background: #eef9fd;
}
.community-risk-label { display: block; font-weight: 700; }
.community-risk-short { display: block; font-size: .85rem; color: #555; }
.community-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
}
.community-btn {
    border: 1px solid #00a5dc;
    background: #00a5dc;
    color: #fff;
    border-radius: 6px;
    padding: .45rem .85rem;
    cursor: pointer;
    font: inherit;
}
.community-btn--secondary {
    background: #fff;
    color: #007a9e;
}
.community-btn--primary { font-weight: 700; }
.community-honeypot {
    position: absolute;
    left: -9999px;
    opacity: 0;
    height: 0;
    width: 0;
    overflow: hidden;
}
.community-hint,
.community-optional {
    font-size: .85rem;
    color: #666;
}
.community-progress {
    font-size: .9rem;
    color: #555;
}
.community-comment-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .35rem;
}
.community-vote-btn,
.community-report-btn {
    font: inherit;
    font-size: .8rem;
    border: 1px solid #ccc;
    background: #fafafa;
    border-radius: 999px;
    padding: .2rem .55rem;
    cursor: pointer;
}
.community-vote-btn[aria-pressed="true"] {
    border-color: #00a5dc;
    background: #e8f7ff;
}
.community-report-form-inline {
    width: 100%;
    display: grid;
    gap: .35rem;
    margin-top: .35rem;
}
.community-comment-meta {
    display: block;
    font-size: .8rem;
    color: #666;
    margin-bottom: .25rem;
}
.community-success {
    border: 1px solid #b9e0c4;
    background: #f4fff7;
    padding: .75rem 1rem;
    border-radius: 8px;
    margin: 1rem 0;
}
#content .community-trust-page h2 {
    margin: 2rem 0 0.85rem;
    padding-bottom: 0.45rem;
    line-height: 1.35;
    font-size: 1.15rem;
    font-weight: 600;
    border-bottom: 1px solid var(--gd-border);
}
.visually-hidden {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0);
    white-space: nowrap; border: 0;
}
@media (max-width: 480px) {
    .community-insights-stats { grid-template-columns: 1fr 1fr; }
    .community-chip-grid { grid-template-columns: 1fr; }
}

/* Professional community design system — loaded after legacy and dark styles */
:root {
    --gd-font: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --gd-bg: #f4f7f9;
    --gd-surface: #ffffff;
    --gd-surface-soft: #f8fafb;
    --gd-surface-raised: #ffffff;
    --gd-text: #14212b;
    --gd-text-soft: #536471;
    --gd-text-muted: #768590;
    --gd-border: #dce5ea;
    --gd-border-strong: #c8d5dc;
    --gd-brand: #0788b5;
    --gd-brand-strong: #006c94;
    --gd-brand-soft: #e7f7fc;
    --gd-navy: #102733;
    --gd-navy-soft: #183845;
    --gd-safe: #18834b;
    --gd-safe-soft: #e9f8ef;
    --gd-warn: #a25c09;
    --gd-warn-soft: #fff5df;
    --gd-danger: #c33c48;
    --gd-danger-soft: #fff0f1;
    --gd-shadow-sm: 0 1px 2px rgba(16, 39, 51, .05);
    --gd-shadow-md: 0 8px 26px rgba(16, 39, 51, .08);
    --gd-radius-sm: 8px;
    --gd-radius: 14px;
    --gd-radius-lg: 20px;
}

html[data-resolved-theme="dark"] {
    --gd-bg: #0c151d;
    --gd-surface: #14212b;
    --gd-surface-soft: #182731;
    --gd-surface-raised: #1b2b36;
    --gd-text: #edf4f7;
    --gd-text-soft: #b7c6cf;
    --gd-text-muted: #8da0ab;
    --gd-border: #293b46;
    --gd-border-strong: #3a4e5a;
    --gd-brand: #55c7ee;
    --gd-brand-strong: #8bdcf5;
    --gd-brand-soft: #173846;
    --gd-navy: #0e202a;
    --gd-navy-soft: #173542;
    --gd-safe: #67d697;
    --gd-safe-soft: #173a2a;
    --gd-warn: #ffc267;
    --gd-warn-soft: #3b2d18;
    --gd-danger: #ff8b94;
    --gd-danger-soft: #3d2026;
    --gd-shadow-sm: 0 1px 2px rgba(0, 0, 0, .18);
    --gd-shadow-md: 0 10px 30px rgba(0, 0, 0, .24);
}

[hidden] {
    display: none !important;
}

html {
    background: var(--gd-bg);
}

body {
    font-family: var(--gd-font);
    color: var(--gd-text);
    background: var(--gd-bg);
    font-size: 16px;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}

body a {
    color: var(--gd-brand);
    text-underline-offset: 2px;
}

body a:hover {
    color: var(--gd-brand-strong);
}

body button,
body input,
body textarea,
body select {
    font-family: inherit;
}

body :focus-visible {
    outline: 3px solid color-mix(in srgb, var(--gd-brand) 55%, transparent);
    outline-offset: 3px;
}

#header {
    background: transparent;
    border: 0;
    padding: 12px 20px 0;
}

.site-chrome {
    position: sticky;
    top: 0;
    z-index: 100;
    background: color-mix(in srgb, var(--gd-navy) 55%, transparent);
    backdrop-filter: blur(28px) saturate(185%) brightness(1.05);
    -webkit-backdrop-filter: blur(28px) saturate(185%) brightness(1.05);
    border-bottom: 1px solid color-mix(in srgb, #ffffff 9%, transparent);
    box-shadow: inset 0 1px 0 color-mix(in srgb, #ffffff 10%, transparent),
                0 6px 24px color-mix(in srgb, var(--gd-navy) 22%, transparent);
    padding-bottom: 14px;
}

html[data-resolved-theme="dark"] .site-chrome {
    background: color-mix(in srgb, var(--gd-navy) 62%, transparent);
    border-bottom-color: color-mix(in srgb, #ffffff 7%, transparent);
}

@media (prefers-reduced-transparency: reduce) {
    .site-chrome {
        background: var(--gd-navy);
        backdrop-filter: none;
        -webkit-backdrop-filter: none;
    }
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    .site-chrome,
    html[data-resolved-theme="dark"] .site-chrome {
        background: color-mix(in srgb, var(--gd-navy) 94%, transparent);
    }
}

#logo {
    max-width: 1120px;
    width: auto;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

#logo svg {
    width: 48px;
    height: 48px;
    margin: 0;
    flex: 0 0 auto;
}

#logo a,
html[data-resolved-theme="dark"] #logo a {
    display: inline;
    padding: 0;
    color: #f3f8fa;
    font-size: clamp(1.7rem, 4vw, 2.25rem);
    font-weight: 350;
    line-height: 1;
    letter-spacing: -.035em;
    text-decoration: none;
}

#zoeken {
    background: transparent;
    padding: 10px 20px 0;
    max-width: 1120px;
    margin: 0 auto;
}

#search-form {
    position: relative;
    display: flex;
    align-items: stretch;
    max-width: 520px;
    margin: 0 auto;
    border-radius: 12px;
    background: color-mix(in srgb, var(--gd-surface) 12%, transparent);
    border: 1px solid color-mix(in srgb, var(--gd-text) 14%, transparent);
    box-shadow: none;
    overflow: hidden;
}

.search-form-icon {
    display: flex;
    align-items: center;
    padding: 0 0 0 14px;
    color: color-mix(in srgb, var(--gd-text) 55%, transparent);
    pointer-events: none;
}

.search-form-icon svg {
    width: 16px;
    height: 16px;
}

#zoeken #search-form input,
#zoeken #search-form input.input {
    box-sizing: border-box;
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    margin: 0 !important;
    padding: 12px 10px;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #edf4f7;
    font-size: 1rem;
    line-height: 1.4;
    position: static !important;
}

#zoeken #search-form input::placeholder {
    color: color-mix(in srgb, #edf4f7 45%, transparent);
}

#zoeken #search-form button {
    box-sizing: border-box;
    position: static !important;
    width: 44px !important;
    min-width: 44px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 0 !important;
    background: transparent;
    color: color-mix(in srgb, #edf4f7 70%, transparent);
    font-size: 1rem;
    cursor: pointer;
    transition: color 120ms ease-out, background 120ms ease-out, transform 100ms ease-out;
}

#zoeken #search-form button:hover {
    background: color-mix(in srgb, var(--gd-brand) 22%, transparent);
    color: #fff;
}

#zoeken #search-form button:active {
    transform: scale(0.94);
    background: color-mix(in srgb, var(--gd-brand) 32%, transparent);
}

#zoeken #search-form button svg {
    width: 17px;
    height: 17px;
}

#content {
    box-sizing: border-box;
    max-width: 1120px;
    padding: 28px 20px 52px;
    color: var(--gd-text);
    font-size: 1rem;
}

/* Kill legacy style.css #content p cream warning boxes inside new-design surfaces */
#content :is(
    .home-hero,
    .home-section,
    .home-trending,
    .home-activity,
    .home-stats,
    .home-tips,
    .home-cta,
    .nummer-page,
    .nummer-hero-card,
    .nummer-verdict-panel,
    .nummer-rating-panel,
    .nummer-herkomst,
    .nummer-zijblok,
    #nummeroverzicht,
    #plaatsoverzicht,
    .plaatsmain,
    .hub-page-intro,
    .community-stream,
    .community-section,
    .community-hero,
    .ervaring-card,
    .home-section-head
) p {
    margin: 0;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    font-size: inherit;
    line-height: inherit;
}

#content > h1,
#content .nummer h1 {
    color: var(--gd-text);
    font-size: clamp(1.8rem, 4vw, 2.55rem);
    line-height: 1.15;
    letter-spacing: -.035em;
    font-weight: 720;
}

.community-eyebrow {
    display: block;
    margin-bottom: 7px;
    color: var(--gd-brand);
    font-size: .73rem;
    font-weight: 800;
    letter-spacing: .11em;
    line-height: 1.2;
    text-transform: uppercase;
}

#content .community-hero {
    position: relative;
    margin: 0 0 22px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

#content .community-hero h1 {
    max-width: 720px;
    margin: 0;
    color: var(--gd-text);
    font-size: clamp(1.65rem, 3.5vw, 2.35rem);
    line-height: 1.12;
    letter-spacing: -.03em;
    font-weight: 740;
}

#content .community-hero p,
#content .community-hero .community-hero-lead {
    max-width: 640px;
    margin: 10px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: 1.05rem;
    line-height: 1.5;
}

.community-hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 9px 18px;
}

.community-hero-trust span {
    position: relative;
    padding-left: 21px;
    color: var(--gd-text-soft);
    font-size: .88rem;
    font-weight: 650;
}

.community-hero-trust span::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--gd-safe);
    font-weight: 900;
}

.community-home-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(290px, .9fr);
    gap: 22px;
    align-items: start;
}

#content .community-section,
#content .community-stream {
    margin: 0 0 28px;
    padding: 22px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-sm);
}

#content .community-stream {
    margin-top: 4px;
}

.community-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 16px;
}

#content .community-section h2,
#content .community-stream h2 {
    margin: 0;
    padding: 0;
    border: 0;
    color: var(--gd-text);
    font-size: 1.35rem;
    line-height: 1.2;
    font-weight: 740;
    letter-spacing: -.025em;
}

#content .community-section p,
#content .community-stream p,
#content .community-empty,
#content .community-section-intro {
    margin: 0 0 16px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: .92rem;
    line-height: 1.5;
}

.community-live-indicator {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 9px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    color: var(--gd-text-soft);
    font-size: .75rem;
    font-weight: 700;
    white-space: nowrap;
}

.community-live-indicator i {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--gd-safe);
    box-shadow: 0 0 0 4px color-mix(in srgb, var(--gd-safe) 15%, transparent);
}

.community-live-feed,
.community-radar-list {
    display: grid;
    gap: 10px;
}

.community-live-feed-item,
.community-radar-item {
    box-sizing: border-box;
    margin: 0;
    padding: 14px;
    border: 1px solid var(--gd-border);
    border-radius: 11px;
    background: var(--gd-surface-soft);
    color: var(--gd-text);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.community-live-feed-item:hover,
.community-radar-item:hover {
    border-color: var(--gd-border-strong);
    box-shadow: var(--gd-shadow-sm);
    transform: translateY(-1px);
}

.community-live-feed-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
}

.community-live-feed-nummer {
    color: var(--gd-brand);
    font-size: .98rem;
    font-weight: 780;
    text-decoration: none;
    letter-spacing: .01em;
}

.community-live-feed-badge {
    justify-self: start;
    width: auto;
    padding: 3px 8px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .68rem;
    font-weight: 750;
    line-height: 1.2;
}

.community-live-feed-badge--5,
.community-live-feed-badge--4 {
    border-color: color-mix(in srgb, var(--gd-danger) 35%, var(--gd-border));
    background: var(--gd-danger-soft);
    color: var(--gd-danger);
}

.community-live-feed-badge--1,
.community-live-feed-badge--2 {
    border-color: color-mix(in srgb, var(--gd-safe) 35%, var(--gd-border));
    background: var(--gd-safe-soft);
    color: var(--gd-safe);
}

.community-live-feed-top time {
    margin-left: auto;
    color: var(--gd-text-muted);
    font-size: .75rem;
}

.community-live-feed-snippet {
    display: -webkit-box;
    margin-top: 8px;
    overflow: hidden;
    color: var(--gd-text-soft);
    font-size: .88rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.community-card-link {
    justify-self: start;
    margin-top: 8px;
    color: var(--gd-brand);
    font-size: .78rem;
    font-weight: 760;
    text-decoration: none;
}

.community-radar-item {
    display: grid;
    grid-template-columns: 1fr;
    gap: 3px;
}

.community-radar-nummer {
    color: var(--gd-brand);
    font-size: .95rem;
    font-weight: 720;
    text-decoration: none;
}

.community-radar-nummer:hover {
    text-decoration: underline;
}

.community-radar-count {
    color: var(--gd-text);
    font-size: .85rem;
}

.community-radar-detail {
    color: var(--gd-text-muted);
    font-size: .78rem;
}

/* Homepage — NummerCheck-inspired layout */
.home-hero {
    margin: 0 0 28px;
    padding: 0;
}

.home-hero h1,
#content .home-hero h1 {
    max-width: 760px;
    margin: 0;
    padding: 0;
    border: 0;
    color: var(--gd-text);
    font-size: clamp(1.85rem, 4.2vw, 2.65rem);
    line-height: 1.1;
    letter-spacing: -.035em;
    font-weight: 760;
}

#content .home-hero-lead {
    max-width: 620px;
    margin: 14px 0 0;
    color: var(--gd-text-muted);
    font-size: 1.06rem;
    line-height: 1.55;
    font-weight: 400;
    letter-spacing: -.01em;
}

.home-hero-search,
.home-cta-search {
    display: flex;
    align-items: stretch;
    gap: 0;
    max-width: 560px;
    margin: 22px 0 0;
    border: 1px solid var(--gd-border-strong);
    border-radius: 12px;
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-sm);
    overflow: hidden;
}

.home-search-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 14px;
    color: var(--gd-text-muted);
    background: var(--gd-surface-soft);
    border-right: 1px solid var(--gd-border);
}

.home-search-icon svg {
    width: 18px;
    height: 18px;
}

.home-hero-search input,
.home-cta-search input {
    flex: 1 1 auto;
    min-width: 0;
    margin: 0;
    padding: 14px 12px;
    border: 0;
    background: transparent;
    color: var(--gd-text);
    font-size: 1rem;
    line-height: 1.4;
}

.home-hero-search input::placeholder,
.home-cta-search input::placeholder {
    color: var(--gd-text-muted);
}

.home-hero-search button,
.home-cta-search button {
    margin: 0;
    padding: 0 20px;
    border: 0;
    border-left: 1px solid var(--gd-border);
    background: var(--gd-brand);
    color: #fff;
    font-size: .92rem;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s ease;
}

.home-hero-search button:hover,
.home-cta-search button:hover {
    background: var(--gd-brand-strong);
}

.home-pills-wrap {
    margin: 0 0 32px;
}

.home-pills-label {
    display: block;
    margin: 0 0 9px;
    color: var(--gd-text-muted);
    font-size: .82rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    background: transparent;
}

.home-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 16px;
}

.home-trending .home-section-head {
    margin-bottom: 12px;
}

.home-pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 14px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .84rem;
    font-weight: 650;
    font-family: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.home-pill.is-active {
    border-color: var(--gd-brand);
    color: var(--gd-brand-strong);
    background: color-mix(in srgb, var(--gd-brand) 10%, var(--gd-surface));
}

.home-pill:hover {
    border-color: var(--gd-border-strong);
    color: var(--gd-text);
    background: var(--gd-surface-soft);
}

.home-pill--danger {
    border-color: color-mix(in srgb, var(--gd-danger) 30%, var(--gd-border));
    color: var(--gd-danger);
}

.home-pill--warn {
    border-color: color-mix(in srgb, var(--gd-warn) 30%, var(--gd-border));
    color: var(--gd-warn);
}

.home-pill--safe {
    border-color: color-mix(in srgb, var(--gd-safe) 30%, var(--gd-border));
    color: var(--gd-safe);
}

.home-pill--brand {
    border-color: color-mix(in srgb, var(--gd-brand) 30%, var(--gd-border));
    color: var(--gd-brand);
}

.home-trending-card.is-filtered-out,
.home-activity-item.is-filtered-out {
    display: none !important;
}

.home-trending,
.home-activity,
.home-stats,
.home-tips,
.home-cta {
    margin: 0 0 32px;
}

.home-section-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px 18px;
    margin-bottom: 16px;
}

.home-trending h2,
.home-activity h2,
.home-tips h2,
.home-cta h2,
#content .home-trending h2,
#content .home-activity h2,
#content .home-tips h2,
#content .home-cta h2,
#content .home-stats h2,
#content .nummer-ervaringen h2,
#content .nummer-zijblok-title {
    margin: 0;
    padding: 0;
    border: 0;
    border-bottom: 0 !important;
    color: var(--gd-text);
    font-size: 1.35rem;
    line-height: 1.25;
    font-weight: 720;
    letter-spacing: -.025em;
}

#content .home-section-intro {
    flex: 1 1 100%;
    margin: 2px 0 0;
    color: var(--gd-text-muted);
    font-size: .88rem;
    line-height: 1.45;
    font-weight: 400;
}

.home-section-head-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

#content .home-section-head-text .home-section-intro {
    flex: 0 0 auto;
    transition: color .15s ease;
}

.home-filter-reset {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 13px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .8rem;
    font-weight: 650;
    font-family: inherit;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, color .15s ease;
}

.home-filter-reset::before {
    content: "\00d7";
    font-size: 1.1rem;
    line-height: 1;
    margin-top: -1px;
}

.home-filter-reset:hover,
.home-filter-reset:focus-visible {
    border-color: var(--gd-border-strong);
    background: var(--gd-surface-soft);
    color: var(--gd-text);
}

.home-trending-empty {
    margin-top: 14px;
    padding: 20px 16px;
    border: 1px dashed var(--gd-border);
    border-radius: var(--gd-radius-sm);
    color: var(--gd-text-muted);
    font-size: .92rem;
    text-align: center;
}

.home-trending-empty[hidden] {
    display: none;
}

#content .home-cta-lead {
    margin: 10px auto 0;
    max-width: 480px;
    color: var(--gd-text-muted);
    font-size: .92rem;
    line-height: 1.5;
}

.home-trending-track {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    padding: 4px 2px 8px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

.home-trending-card {
    flex: 0 0 220px;
    scroll-snap-align: start;
    display: grid;
    gap: 8px;
    padding: 16px;
    border: 1px solid var(--gd-border);
    border-radius: 12px;
    background: var(--gd-surface);
    color: inherit;
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.home-trending-card:hover {
    border-color: var(--gd-border-strong);
    box-shadow: var(--gd-shadow-sm);
    transform: translateY(-1px);
}

.home-trending-nummer {
    color: var(--gd-brand);
    font-size: 1.05rem;
    font-weight: 780;
    letter-spacing: .01em;
}

.home-trending-badge {
    justify-self: start;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 750;
    line-height: 1.2;
    border: 1px solid var(--gd-border);
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
}

.home-trending-badge--5,
.home-trending-badge--4 {
    border-color: color-mix(in srgb, var(--gd-danger) 35%, var(--gd-border));
    background: var(--gd-danger-soft);
    color: var(--gd-danger);
}

.home-trending-badge--1,
.home-trending-badge--2 {
    border-color: color-mix(in srgb, var(--gd-safe) 35%, var(--gd-border));
    background: var(--gd-safe-soft);
    color: var(--gd-safe);
}

.home-trending-label {
    color: var(--gd-text-soft);
    font-size: .82rem;
    line-height: 1.35;
    min-height: 2.5em;
}

.home-trending-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
}

.home-trending-meta .stars {
    width: 78px;
    height: 14px;
    flex-shrink: 0;
    overflow: hidden;
}

.home-trending-meta .stars-row {
    width: 78px;
    gap: 2px;
}

.home-trending-meta .stars-row svg {
    width: 14px;
    height: 14px;
}

.home-trending-count {
    color: var(--gd-text-muted);
    font-size: .75rem;
    font-weight: 650;
}

.home-activity-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 10px;
}

.home-activity-item {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 12px;
    padding: 14px 16px;
    border: 1px solid var(--gd-border);
    border-radius: 12px;
    background: var(--gd-surface);
}

.home-activity-avatar {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--gd-brand-soft);
    color: var(--gd-brand);
    font-size: .9rem;
    font-weight: 800;
}

.home-activity-body {
    min-width: 0;
}

.home-activity-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
}

.home-activity-nummer {
    color: var(--gd-brand);
    font-weight: 780;
    font-size: .95rem;
    text-decoration: none;
}

.home-activity-badge {
    padding: 2px 8px;
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 750;
    border: 1px solid var(--gd-border);
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
}

.home-activity-badge--5,
.home-activity-badge--4 {
    border-color: color-mix(in srgb, var(--gd-danger) 35%, var(--gd-border));
    background: var(--gd-danger-soft);
    color: var(--gd-danger);
}

.home-activity-badge--1,
.home-activity-badge--2 {
    border-color: color-mix(in srgb, var(--gd-safe) 35%, var(--gd-border));
    background: var(--gd-safe-soft);
    color: var(--gd-safe);
}

.home-activity-time {
    margin-left: auto;
    color: var(--gd-text-muted);
    font-size: .74rem;
}

#content .home-activity-snippet {
    margin: 0;
    color: var(--gd-text-soft);
    font-size: .88rem;
    line-height: 1.5;
    font-weight: 400;
}

.home-activity-helpful {
    display: inline-block;
    margin-top: 8px;
    color: var(--gd-text-muted);
    font-size: .74rem;
    font-weight: 650;
}

.home-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 20px 22px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
}

.home-stat {
    text-align: center;
}

.home-stat dt {
    margin: 0;
    color: var(--gd-text-muted);
    font-size: .78rem;
    font-weight: 650;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.home-stat dd {
    margin: 6px 0 0;
    color: var(--gd-text);
    font-size: clamp(1.4rem, 3vw, 1.85rem);
    font-weight: 780;
    letter-spacing: -.02em;
    line-height: 1.1;
}

.home-tips-list {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 10px;
}

.home-tips-list li {
    position: relative;
    padding: 12px 14px 12px 36px;
    border: 1px solid var(--gd-border);
    border-radius: 10px;
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
    font-size: .9rem;
    line-height: 1.45;
}

.home-tips-list li::before {
    content: "✓";
    position: absolute;
    left: 14px;
    top: 12px;
    color: var(--gd-safe);
    font-weight: 800;
}

.home-cta {
    padding: 28px 24px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    text-align: center;
}

.home-cta h2 {
    max-width: 520px;
    margin: 0 auto;
}

.home-cta-search {
    margin: 18px auto 0;
}

.community-stream #commentaar.frontpage {
    margin: 0;
}

.community-stream #commentaar.frontpage ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.community-stream #commentaar.frontpage .ervaring-feed-item {
    box-sizing: border-box;
    margin: 0;
    padding: 14px;
    border: 1px solid var(--gd-border);
    border-radius: 11px;
    background: var(--gd-surface-soft);
}

.community-stream #commentaar.frontpage .ervaring-feed-top {
    display: flex;
    align-items: center;
    gap: 7px;
}

.community-stream #commentaar.frontpage .ervaring-feed-datum {
    margin-left: auto;
    color: var(--gd-text-muted);
    font-size: .75rem;
}

.community-stream #commentaar.frontpage .ervaring-feed-tekst {
    color: var(--gd-text-soft);
    font-size: .88rem;
}

.community-stream .paginas {
    margin-top: 28px;
    padding-top: 8px;
    padding-bottom: 12px;
}

.nummer-content > .paginas,
.nummer-page .paginas {
    margin-top: 28px;
    padding-top: 8px;
    padding-bottom: 12px;
}

/* Number detail */
.breadcrumb {
    margin-top: 0;
    color: var(--gd-text-muted);
}

.breadcrumb li:last-child,
.breadcrumb a {
    color: var(--gd-text-muted);
}

.nummer-info {
    margin: 0 0 8px;
}

#content .nummer-info p {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: .9rem;
}

.nummer {
    margin-bottom: 20px;
}

.nummer h1,
.nummer h1 strong {
    margin: 0;
    color: var(--gd-text);
    font-size: clamp(2rem, 5vw, 2.75rem);
    line-height: 1.08;
    font-weight: 740;
    letter-spacing: -0.03em;
}

/* Verdict-first number page — flex two-column layout */
#content:has(.nummer-page) {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 24px 28px;
    max-width: 1060px;
}

#content:has(.nummer-page) > :not(.nummer-page):not(.rechterkolom):not(#clear) {
    flex: 0 0 100%;
    width: 100%;
}

#content:has(.nummer-page) > .nummer-page {
    flex: 1 1 0;
    min-width: min(100%, 640px);
    max-width: none;
    width: auto;
    order: 1;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) {
    flex: 0 0 320px;
    width: 320px;
    max-width: 100%;
    float: none;
    clear: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    order: 2;
}

#content:has(.nummer-page) > #clear,
.nummer-page > #clear {
    display: none;
}

#content .nummer-content,
#commentaar2.nummer-content {
    float: none;
    max-width: none;
    width: 100%;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > h4:not(.nummer-zijblok-title) {
    margin: 20px 0 0;
    padding: 14px 16px 10px;
    border: 1px solid var(--gd-border);
    border-bottom: 0;
    border-radius: var(--gd-radius-sm) var(--gd-radius-sm) 0 0;
    background: var(--gd-surface-soft);
    color: var(--gd-text);
    font-size: .92rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    line-height: 1.3;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > h4:not(.nummer-zijblok-title) + ul {
    margin: 0 0 20px;
    padding: 0 16px 14px;
    list-style: none;
    border: 1px solid var(--gd-border);
    border-top: 0;
    border-radius: 0 0 var(--gd-radius-sm) var(--gd-radius-sm);
    background: var(--gd-surface-soft);
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > ul li {
    margin: 0;
    padding: 8px 0;
    line-height: 1.4;
    border-bottom: 1px solid var(--gd-border);
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    background: transparent;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > ul li:last-child {
    border-bottom: 0;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > ul li:nth-child(even) {
    background: transparent;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > ul li a:not(.comment-preview-link) {
    display: inline;
    color: var(--gd-brand);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) > ul.vergelijkbare-nummers + .hub-link {
    margin: -20px 0 20px !important;
    padding: 0 16px 14px;
    border: 1px solid var(--gd-border);
    border-top: 0;
    border-radius: 0 0 var(--gd-radius-sm) var(--gd-radius-sm);
    background: var(--gd-surface-soft);
    font-size: .78rem;
    line-height: 1.4;
}

#content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) .ads-sidebar {
    margin: 0 0 4px;
}

.nummer-page {
    max-width: none;
    width: auto;
}

.nummer-hero-card {
    box-sizing: border-box;
    margin: 0 0 16px;
    padding: clamp(18px, 3vw, 28px);
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-sm);
}

.nummer-hero-card-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(190px, 240px);
    gap: clamp(18px, 3vw, 32px);
    align-items: start;
}

.nummer-hero-card-main {
    min-width: 0;
}

.nummer-hero-card-number {
    margin: 0;
}

.nummer-hero-card-number-row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 10px 12px;
}

.nummer-copy-btn {
    align-self: center;
    margin-top: 4px;
    padding: 6px 12px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
    font-size: .78rem;
    font-weight: 650;
    font-family: inherit;
    line-height: 1.2;
    cursor: pointer;
    transition: border-color .15s ease, color .15s ease, background .15s ease;
}

.nummer-copy-btn:hover {
    border-color: var(--gd-border-strong);
    color: var(--gd-text);
}

.nummer-copy-btn.is-copied {
    border-color: var(--gd-safe);
    color: var(--gd-safe);
    background: var(--gd-safe-soft);
}

.nummer-herkomst-line--card {
    margin-top: 6px !important;
}

.nummer-status-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 10px 0 14px;
    padding: 0;
    list-style: none;
}

.nummer-status-chip {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
    font-size: .74rem;
    font-weight: 650;
    line-height: 1.2;
}

.nummer-status-chip--verdict {
    color: var(--gd-text);
    font-weight: 700;
}

.nummer-status-chip--rate-5 { border-color: #efb8be; background: var(--gd-danger-soft); color: #9a2f38; }
.nummer-status-chip--rate-4 { border-color: #f0cdb0; background: var(--gd-warn-soft); color: #8a4d0d; }
.nummer-status-chip--rate-3 { border-color: #e8dfa0; background: #fffbea; color: #7a6d00; }
.nummer-status-chip--rate-2 { border-color: #c8dfa0; background: #f4fbea; color: #4d6d12; }
.nummer-status-chip--rate-1 { border-color: #b8e0c8; background: var(--gd-safe-soft); color: #156b3a; }

.nummer-status-chip--recent {
    border-color: #b8dff0;
    background: var(--gd-brand-soft);
    color: var(--gd-brand-strong);
}

/* Unified verdict panel — hero card left column */
.nummer-verdict-panel {
    --gd-verdict-accent: var(--gd-text-muted);
    --gd-verdict-accent-soft: var(--gd-surface-soft);
    margin: 12px 0 0;
    padding: 15px 16px 14px;
    border: 1px solid color-mix(in srgb, var(--gd-verdict-accent) 14%, var(--gd-border));
    border-radius: var(--gd-radius-sm);
    background: color-mix(in srgb, var(--gd-verdict-accent) 6%, var(--gd-surface));
}

.nummer-verdict-panel-body {
    min-width: 0;
}

.nummer-verdict-panel-head {
    display: flex;
    align-items: center;
    gap: 9px;
}

.nummer-verdict-panel-icon {
    flex: 0 0 auto;
    display: inline-flex;
    color: var(--gd-verdict-accent);
}

.nummer-verdict-panel-icon svg {
    width: clamp(22px, 4.4vw, 27px);
    height: clamp(22px, 4.4vw, 27px);
    display: block;
}

.nummer-verdict-panel-word {
    margin: 0;
    font-size: clamp(1.55rem, 3.8vw, 1.95rem);
    line-height: 1.04;
    font-weight: 800;
    letter-spacing: -0.04em;
    color: var(--gd-verdict-accent);
}

/* Severity spectrum — Veilig ... Gevaarlijk with position marker */
.nummer-verdict-panel-scale {
    position: relative;
    margin-top: 15px;
    height: 8px;
}

.nummer-verdict-panel-scale-track {
    position: absolute;
    inset: 0;
    border-radius: 999px;
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--gd-safe) 55%, transparent) 0%,
        color-mix(in srgb, #b8a400 50%, transparent) 48%,
        color-mix(in srgb, var(--gd-warn) 60%, transparent) 72%,
        color-mix(in srgb, var(--gd-danger) 68%, transparent) 100%
    );
    opacity: .5;
}

.nummer-verdict-panel-scale-marker {
    position: absolute;
    top: 50%;
    left: var(--marker-pos, 50%);
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--gd-verdict-accent);
    border: 3px solid var(--gd-surface);
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--gd-verdict-accent) 55%, transparent),
                0 2px 6px color-mix(in srgb, var(--gd-verdict-accent) 40%, transparent);
    transform: translate(-50%, -50%);
    transition: left .25s ease;
}

.nummer-verdict-panel-scale--empty .nummer-verdict-panel-scale-track {
    opacity: .28;
}

.nummer-verdict-panel-scale-ends {
    display: flex;
    justify-content: space-between;
    margin-top: 7px;
    color: var(--gd-text-muted);
    font-size: .66rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.nummer-verdict-panel-consensus {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 3px 8px;
    margin: 12px 0 0 !important;
    line-height: 1.35;
}

.nummer-verdict-panel-consensus-main {
    color: var(--gd-verdict-accent);
    font-size: .9rem;
    font-weight: 750;
    letter-spacing: -0.01em;
}

.nummer-verdict-panel-consensus-sub {
    color: var(--gd-text-muted);
    font-size: .78rem;
    font-weight: 500;
}

/* Strong consensus: brighter marker glow */
.nummer-verdict-panel--strong .nummer-verdict-panel-scale-marker {
    box-shadow: 0 0 0 1px color-mix(in srgb, var(--gd-verdict-accent) 60%, transparent),
                0 0 14px color-mix(in srgb, var(--gd-verdict-accent) 55%, transparent);
}

.nummer-verdict-panel-action {
    margin: 8px 0 0 !important;
    color: var(--gd-text);
    font-size: clamp(.98rem, 2.2vw, 1.08rem);
    font-weight: 650;
    line-height: 1.38;
    letter-spacing: -0.012em;
}

.nummer-verdict-panel--danger {
    --gd-verdict-accent: var(--gd-danger);
    --gd-verdict-accent-soft: var(--gd-danger-soft);
    background: color-mix(in srgb, var(--gd-danger) 6%, var(--gd-surface));
}

.nummer-verdict-panel--warn {
    --gd-verdict-accent: var(--gd-warn);
    --gd-verdict-accent-soft: var(--gd-warn-soft);
    background: color-mix(in srgb, var(--gd-warn) 6%, var(--gd-surface));
}

.nummer-verdict-panel--safe {
    --gd-verdict-accent: var(--gd-safe);
    --gd-verdict-accent-soft: var(--gd-safe-soft);
    background: color-mix(in srgb, var(--gd-safe) 6%, var(--gd-surface));
}

.nummer-verdict-panel--neutral,
.nummer-verdict-panel--empty {
    --gd-verdict-accent: var(--gd-text-muted);
    --gd-verdict-accent-soft: var(--gd-surface-soft);
    background: var(--gd-surface-soft);
}

.nummer-verdict-panel--rate-5 { --gd-verdict-accent: var(--gd-danger); --gd-verdict-accent-soft: var(--gd-danger-soft); }
.nummer-verdict-panel--rate-4 { --gd-verdict-accent: var(--gd-warn); --gd-verdict-accent-soft: var(--gd-warn-soft); }
.nummer-verdict-panel--rate-3 { --gd-verdict-accent: #b8a400; --gd-verdict-accent-soft: #fffbea; }
.nummer-verdict-panel--rate-2 { --gd-verdict-accent: #6a9e18; --gd-verdict-accent-soft: #f4fbea; }
.nummer-verdict-panel--rate-1 { --gd-verdict-accent: var(--gd-safe); --gd-verdict-accent-soft: var(--gd-safe-soft); }
.nummer-verdict-panel--rate-0 { --gd-verdict-accent: var(--gd-text-muted); --gd-verdict-accent-soft: var(--gd-surface-soft); }

.nummer-verdict-panel--strong {
    border-color: color-mix(in srgb, var(--gd-verdict-accent) 30%, var(--gd-border));
}

.nummer-verdict-panel--empty .nummer-verdict-panel-word {
    color: var(--gd-text-muted);
}

.nummer-rating-panel {
    padding: 14px 16px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius-sm);
    background: var(--gd-surface-soft);
}

.nummer-rating-herkomst-chip {
    margin: 0 0 10px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.nummer-rating-herkomst-chip a,
.nummer-rating-herkomst-chip {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 4px 10px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .72rem;
    font-weight: 650;
    line-height: 1.3;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.nummer-rating-herkomst-chip a:hover {
    border-color: var(--gd-border-strong);
    color: var(--gd-text);
}

.nummer-rating-panel-empty {
    margin: 0;
    color: var(--gd-text-muted);
    font-size: .82rem;
    line-height: 1.4;
}

.nummer-rating-panel-head {
    display: flex;
    align-items: baseline;
    gap: 4px;
    margin-bottom: 4px;
}

.nummer-rating-panel-score {
    font-size: 2rem;
    line-height: 1;
    font-weight: 800;
    letter-spacing: -0.04em;
}

.nummer-rating-panel-scale {
    color: var(--gd-text-muted);
    font-size: .9rem;
    font-weight: 600;
}

.nummer-rating-panel .stars {
    margin: 4px 0 6px;
}

.nummer-rating-panel-count {
    margin: 0 0 12px !important;
    color: var(--gd-text-muted);
    font-size: .78rem;
    font-weight: 500;
}

.nummer-rate-input {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin: 2px 0 4px;
}

.nummer-rate-input-label {
    font-size: .78rem;
    font-weight: 650;
    color: var(--gd-text-soft);
}

.nummer-rate-stars {
    display: inline-flex;
    gap: 2px;
    align-self: flex-start;
}

.nummer-rate-star {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
    padding: 2px;
    border: 0;
    background: transparent;
    color: var(--gd-border-strong);
    line-height: 0;
    cursor: pointer;
    border-radius: 6px;
    transition: transform .08s ease, color .12s ease;
}

.nummer-rate-star svg {
    width: 30px;
    height: 30px;
    display: block;
    fill: currentColor;
}

.nummer-rate-star:hover {
    transform: scale(1.12);
}

.nummer-rate-star:focus-visible {
    outline: 2px solid var(--gd-brand);
    outline-offset: 2px;
}

.nummer-rate-star.is-on {
    color: #f5a623;
}

html[data-resolved-theme="dark"] .nummer-rate-star.is-on {
    color: #ffc861;
}

.nummer-rate-caption {
    min-height: 1.1em;
    font-size: .76rem;
    color: var(--gd-text-muted);
}

.community-rate-summary {
    margin: 0 0 14px !important;
    padding: 10px 14px;
    border: 1px solid color-mix(in srgb, var(--gd-brand) 30%, var(--gd-border));
    border-radius: var(--gd-radius-sm);
    background: var(--gd-brand-soft);
    color: var(--gd-text);
    font-size: .86rem;
    font-weight: 600;
    line-height: 1.4;
}

.nummer-rating-bars {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 6px;
}

.nummer-rating-bar-row {
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr) 18px;
    gap: 6px;
    align-items: center;
}

.nummer-rating-bar-label {
    color: var(--gd-text-muted);
    font-size: .68rem;
    font-weight: 600;
    line-height: 1.2;
}

.nummer-rating-bar-track {
    display: block;
    height: 6px;
    overflow: hidden;
    border-radius: 999px;
    background: var(--gd-border);
}

.nummer-rating-bar-fill {
    display: block;
    height: 100%;
    border-radius: 999px;
    min-width: 2px;
}

.nummer-rating-bar-fill--5 { background: #c33c48; }
.nummer-rating-bar-fill--4 { background: #d96a20; }
.nummer-rating-bar-fill--3 { background: #b8a400; }
.nummer-rating-bar-fill--2 { background: #6a9e18; }
.nummer-rating-bar-fill--1 { background: #2da85a; }

.nummer-rating-bar-count {
    color: var(--gd-text-muted);
    font-size: .68rem;
    font-weight: 600;
    text-align: right;
}

.nummer-actiebalk {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--gd-border);
}

.nummer-actiebalk-btn {
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 0 16px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .84rem;
    font-weight: 650;
    line-height: 1;
    text-decoration: none;
    transition: background .15s ease, border-color .15s ease;
}

.nummer-actiebalk-btn:hover,
.nummer-actiebalk-btn:focus-visible {
    border-color: var(--gd-border-strong);
    background: var(--gd-surface-soft);
    text-decoration: none;
}

.nummer-actiebalk-btn--primary {
    border-color: transparent;
    background: var(--gd-brand-strong);
    color: #fff !important;
}

.nummer-actiebalk-btn--primary:hover,
.nummer-actiebalk-btn--primary:focus-visible {
    background: color-mix(in srgb, var(--gd-brand-strong) 88%, #000);
    color: #fff !important;
}

html[data-resolved-theme="dark"] .nummer-actiebalk-btn--primary {
    background: var(--gd-brand);
    color: var(--gd-navy) !important;
}

html[data-resolved-theme="dark"] .nummer-actiebalk-btn--primary:hover,
html[data-resolved-theme="dark"] .nummer-actiebalk-btn--primary:focus-visible {
    background: var(--gd-brand-strong);
    color: var(--gd-navy) !important;
}

.nummer-zijblok-tags {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--gd-border);
}

.nummer-zijblok-tags-label {
    display: block;
    margin-bottom: 10px;
    color: var(--gd-text-muted);
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.nummer-topic-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#content .rechterkolom .nummer-topic-tag {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 8px 16px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .74rem;
    font-weight: 600;
    line-height: 1.45;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
}

#content .rechterkolom .nummer-topic-tag span {
    color: var(--gd-text-muted);
    font-weight: 700;
    flex-shrink: 0;
}

.nummer-zijblok-link {
    margin: 12px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: .78rem;
    line-height: 1.4;
}

#content .nummer-zijblok-link a {
    color: var(--gd-brand);
    font-weight: 650;
    text-decoration: underline;
    text-underline-offset: 2px;
}

#content .nummer-zijblok-link a:hover {
    color: var(--gd-brand-strong);
}

.nummer-zijblok--veilig {
    margin-top: 16px;
}

.nummer-zijblok--veilig .nummer-zijblok-title {
    margin-bottom: 12px;
}

#content .rechterkolom .nummer-zijblok ul {
    margin: 0;
}

.nummer-veilig-tips {
    margin: 0;
    padding: 0 0 0 1.15em;
    list-style: disc;
    color: var(--gd-text-soft);
    font-size: .82rem;
    line-height: 1.5;
}

#content .rechterkolom .nummer-veilig-tips li {
    margin: 0 0 10px;
    padding: 0 0 0 2px;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: break-word;
    border-bottom: 0;
    background: transparent;
}

#content .rechterkolom .nummer-veilig-tips li:last-child {
    margin-bottom: 0;
}

.nummer-hero-card .nummer-verdict-panel {
    margin-top: 10px;
}

.nummer-hero-card .nummer-verdict-panel-word {
    font-size: clamp(1.6rem, 3.6vw, 2rem);
}

@media (max-width: 820px) {
    .nummer-hero-card-grid {
        grid-template-columns: 1fr;
    }

    .nummer-rating-panel {
        max-width: 320px;
    }

    #content:has(.nummer-page) {
        flex-direction: column;
        gap: 20px;
    }

    #content:has(.nummer-page) > .nummer-page,
    #content:has(.nummer-page) > .rechterkolom:has(.nummer-zijblok--details) {
        flex: 1 1 100%;
        width: 100%;
        max-width: none;
    }
}

@media (max-width: 640px) {
    .nummer-actiebalk {
        flex-direction: column;
        align-items: stretch;
    }

    .nummer-actiebalk-btn {
        width: 100%;
    }

    .nummer-verdict-panel {
        padding: 14px 14px 13px;
    }

    .nummer-verdict-panel-action {
        font-size: .96rem;
    }

    .nummer-zijblok {
        padding: 18px 20px;
    }
}

@media (prefers-color-scheme: dark) {
    .nummer-status-chip--rate-5 { color: #ffb8be; }
    .nummer-status-chip--rate-4 { color: #ffc9a0; }
    .nummer-status-chip--rate-3 { color: #e8df90; }
    .nummer-status-chip--rate-2 { color: #c8df90; }
    .nummer-status-chip--rate-1 { color: #98dfb0; }

    .nummer-verdict-panel--rate-3 { --gd-verdict-accent: #e8df90; --gd-verdict-accent-soft: #3b3818; }
    .nummer-verdict-panel--rate-2 { --gd-verdict-accent: #c8df90; --gd-verdict-accent-soft: #2a3818; }

    .nummer-verdict-panel--danger {
        background: color-mix(in srgb, var(--gd-danger) 10%, var(--gd-surface));
    }

    .nummer-verdict-panel--warn {
        background: color-mix(in srgb, var(--gd-warn) 10%, var(--gd-surface));
    }

    .nummer-verdict-panel--safe {
        background: color-mix(in srgb, var(--gd-safe) 10%, var(--gd-surface));
    }
}

.nummer-hero {
    margin: 0 0 2px;
}

.nummer-hero.nummer {
    margin-bottom: 2px;
}

.nummer-page .nummer-hero h1,
#content .nummer-page .nummer-hero h1 {
    margin: 0 0 6px;
    color: var(--gd-text-muted);
    font-size: .88rem;
    line-height: 1.35;
    font-weight: 500;
    letter-spacing: 0;
}

.nummer-page .nummer-hero h1 strong,
#content .nummer-page .nummer-hero h1 strong {
    display: block;
    margin-top: 3px;
    margin-bottom: 0;
    color: var(--gd-text);
    font-size: clamp(1.55rem, 4.5vw, 2.05rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.035em;
    font-variant-numeric: tabular-nums;
}

.nummer-page .nummer-hero .subnummer,
#content .nummer-page .nummer-hero span.subnummer {
    display: block;
    float: none !important;
    margin: 10px 0 0 !important;
    padding: 0;
    color: var(--gd-text-muted);
    font-size: .8rem;
    font-weight: 500;
    line-height: 1.45;
    text-align: left;
}

@media (max-width: 640px) {
    .nummer-page .nummer-hero h1 strong,
    #content .nummer-page .nummer-hero h1 strong {
        font-size: 2.15rem;
    }
}

.nummer-herkomst {
    margin: 0 0 14px;
}

#content .nummer-herkomst p {
    margin: 0;
    padding: 0;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.nummer-herkomst-line {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 8px;
    color: var(--gd-text-soft);
    font-size: .9rem;
    line-height: 1.45;
}

.nummer-herkomst-type {
    font-weight: 600;
    color: var(--gd-text-soft);
}

.nummer-herkomst-sep {
    color: var(--gd-text-muted);
}

.nummer-herkomst-regio a {
    color: var(--gd-brand);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.nummer-herkomst-hint {
    margin-top: 4px !important;
    color: var(--gd-text-muted);
    font-size: .82rem;
    line-height: 1.4;
}

.nummer-herkomst-note {
    margin-top: 6px !important;
    color: var(--gd-text-muted);
    font-size: .74rem;
    line-height: 1.4;
}

.nummer-zijblok {
    margin: 0 0 20px;
    padding: 16px 20px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius-sm);
    background: var(--gd-surface-soft);
}

.nummer-zijblok-title {
    margin: 0 0 10px;
    color: var(--gd-text);
    font-size: .92rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.nummer-zijblok-lijst {
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
}

.nummer-zijblok-lijst div {
    display: grid;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 8px;
    align-items: baseline;
}

.nummer-zijblok-lijst dt {
    margin: 0;
    color: var(--gd-text-muted);
    font-size: .76rem;
    font-weight: 600;
    line-height: 1.35;
}

.nummer-zijblok-lijst dd {
    margin: 0;
    color: var(--gd-text-soft);
    font-size: .82rem;
    line-height: 1.4;
}

.nummer-zijblok-lijst a {
    color: var(--gd-brand);
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.nummer-zijblok .nummer-herkomst-note {
    margin-top: 10px !important;
    padding-top: 10px;
    border-top: 1px solid var(--gd-border);
}

.nummer-verdict {
    margin: 8px 0 28px;
    padding: 0 0 22px;
    border: 0;
    border-bottom: 1px solid var(--gd-border);
    background: transparent;
    box-shadow: none;
}

#content .nummer-verdict p {
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
}

#content .nummer-hero-card p,
#content .nummer-verdict-panel p {
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    font-size: inherit;
    line-height: inherit;
}

.nummer-verdict-hero {
    margin-bottom: 14px;
}

.nummer-verdict-badge {
    margin: 0 0 4px;
    line-height: 1;
}

.nummer-verdict-badge-label {
    display: block;
    font-size: clamp(1.75rem, 4.8vw, 2.15rem);
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -0.035em;
}

.nummer-verdict--rate-5 .nummer-verdict-badge-label { color: var(--gd-danger); }
.nummer-verdict--rate-4 .nummer-verdict-badge-label { color: #d96a20; }
.nummer-verdict--rate-3 .nummer-verdict-badge-label { color: #b8a400; }
.nummer-verdict--rate-2 .nummer-verdict-badge-label { color: #6a9e18; }
.nummer-verdict--rate-1 .nummer-verdict-badge-label { color: var(--gd-safe); }
.nummer-verdict--rate-0 .nummer-verdict-badge-label { color: var(--gd-text-muted); }

.nummer-verdict-confirm {
    margin-top: 8px !important;
    color: var(--gd-text-muted);
    font-size: .84rem;
    font-weight: 500;
    line-height: 1.4;
}

.nummer-verdict-action {
    margin-top: 10px !important;
    color: var(--gd-text);
    font-size: clamp(1.06rem, 2.4vw, 1.18rem);
    font-weight: 650;
    line-height: 1.38;
    letter-spacing: -0.01em;
}

.nummer-verdict-proof {
    margin-top: 8px !important;
    color: var(--gd-text-muted);
    font-size: .8rem;
    font-weight: 500;
    line-height: 1.45;
}

.nummer-verdict-details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px 8px;
    margin-top: 2px;
    padding-top: 14px;
    border-top: 1px solid var(--gd-border);
}

.nummer-verdict-details .stars {
    display: inline-flex;
    align-items: center;
    opacity: .85;
    transform: scale(.88);
    transform-origin: left center;
}

.nummer-verdict-cijfer {
    font-size: .92rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.nummer-verdict-score-label {
    color: var(--gd-text-muted);
    font-size: .78rem;
    font-weight: 500;
}

/* Legacy verdict title/advice — kept if referenced elsewhere */
.nummer-verdict-title {
    color: var(--gd-text);
    font-size: clamp(1.12rem, 2.4vw, 1.32rem);
    line-height: 1.3;
    font-weight: 720;
    letter-spacing: -0.02em;
}

.nummer-verdict-advice {
    margin-top: 8px !important;
    color: var(--gd-text-soft);
    font-size: .98rem;
    line-height: 1.45;
    font-weight: 500;
}

.nummer-verdict-score {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    margin-top: 16px;
}

.nummer-verdict-score .stars {
    display: inline-flex;
    align-items: center;
}

.nummer-verdict-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    width: 100%;
    margin-top: 6px;
}

.nummer-verdict-chip {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
    font-size: .76rem;
    font-weight: 650;
    line-height: 1.2;
}

.nummer-verdict-chip--5 { border-color: #efb8be; background: var(--gd-danger-soft); color: #9a2f38; }
.nummer-verdict-chip--4 { border-color: #f0cdb0; background: var(--gd-warn-soft); color: #8a4d0d; }
.nummer-verdict-chip--3 { border-color: #e8dfa0; background: #fffbea; color: #7a6d00; }
.nummer-verdict-chip--2 { border-color: #c8dfa0; background: #f4fbea; color: #4d6d12; }
.nummer-verdict-chip--1 { border-color: #b8e0c8; background: var(--gd-safe-soft); color: #156b3a; }

.nummer-verdict-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 0;
    margin-top: 14px !important;
    color: var(--gd-text-muted);
    font-size: .84rem;
    line-height: 1.45;
}

.nummer-verdict-meta span:not(:last-child)::after {
    content: "·";
    margin: 0 9px;
    color: var(--gd-text-muted);
}

.nummer-verdict-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 18px;
    margin-top: 20px;
}

.nummer-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 22px;
    border-radius: 999px;
    background: var(--gd-brand);
    color: #fff !important;
    font-size: .92rem;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    box-shadow: var(--gd-shadow-sm);
    transition: background .15s ease, transform .15s ease;
}

.nummer-cta-btn:hover,
.nummer-cta-btn:focus-visible {
    background: var(--gd-brand-strong);
    text-decoration: none;
}

.nummer-cta-link {
    color: var(--gd-brand);
    font-size: .86rem;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.nummer-cta-link:hover {
    color: var(--gd-brand-strong);
}

.nummer-content {
    max-width: 770px;
    margin-top: 0;
}

#vertelervaring {
    scroll-margin-top: 88px;
}

.nummer-ervaringen {
    margin: 8px 0 0;
}

.nummer-ervaringen h2,
#content .nummer-ervaringen h2 {
    margin: 0 0 4px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--gd-text);
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.nummer-ervaringen-count {
    color: var(--gd-text-muted);
    font-weight: 600;
}

.nummer-ervaringen-empty {
    margin: 6px 0 0 !important;
    color: var(--gd-text-soft);
    font-size: .92rem;
}

.ervaringen-lijst {
    list-style: none;
    margin: 12px 0 0;
    padding: 0;
    display: grid;
    gap: 10px;
}

.ervaring-card,
#commentaar2 ul li.ervaring-card,
#commentaar2 ul li.ervaring-card:nth-child(even) {
    position: relative;
    margin: 0;
    padding: 15px 17px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius-sm);
    background: var(--gd-surface);
    box-shadow: none;
}

.ervaring-card--removed {
    opacity: .6;
    background: var(--gd-surface-soft);
}

.ervaring-card-head {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin-bottom: 8px;
}

.ervaring-card-head time {
    color: var(--gd-text-muted);
    font-size: .8rem;
}

.ervaring-meta {
    color: var(--gd-text-muted);
    font-size: .78rem;
}

.ervaring-warning {
    color: var(--gd-warn);
    font-size: .74rem;
    font-weight: 650;
}

.ervaring-badge {
    display: inline-flex;
    align-items: center;
    padding: 3px 9px;
    border-radius: 999px;
    color: #fff;
    font-size: .72rem;
    font-weight: 750;
    line-height: 1.25;
}

.ervaring-badge--5 { background: #c33c48; }
.ervaring-badge--4 { background: #d96a20; }
.ervaring-badge--3 { background: #b8a400; }
.ervaring-badge--2 { background: #6a9e18; }
.ervaring-badge--1 { background: #2da85a; }

.ervaring-card-body {
    color: var(--gd-text);
    font-size: .94rem;
    line-height: 1.55;
}

#content .ervaring-card-body p {
    margin: 0;
    padding: 0;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.ervaring-empty,
.ervaring-card-removed {
    color: var(--gd-text-muted);
    font-style: italic;
    font-size: .9rem;
}

.ervaring-card .community-comment-actions {
    margin-top: 12px;
}

@media (prefers-color-scheme: dark) {
    .nummer-verdict-chip--5 { color: #ffb8be; }
    .nummer-verdict-chip--4 { color: #ffc9a0; }
    .nummer-verdict-chip--3 { color: #e8df90; }
    .nummer-verdict-chip--2 { color: #c8df90; }
    .nummer-verdict-chip--1 { color: #98dfb0; }

    .nummer-verdict--rate-4 .nummer-verdict-badge-label { color: #f0a060; }

    .nummer-cta-btn {
        color: var(--gd-navy) !important;
    }
}

@media (max-width: 640px) {
    .nummer-verdict-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .nummer-cta-btn {
        width: 100%;
    }

    .nummer-cta-link {
        text-align: center;
    }
}

/* Nummerprofiel — unified insights + rating + stats */
.nummer-profiel {
    margin: 0 0 28px;
    padding: 0 0 22px;
    border: 0;
    border-bottom: 1px solid var(--gd-border);
    background: transparent;
    box-shadow: none;
    color: var(--gd-text);
}

/* Reset legacy #content p yellow boxes inside profiel */
#content .nummer-profiel p {
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    font-size: inherit;
    line-height: inherit;
}

#content .nummer-profiel h2,
#content .nummer-profiel .nummer-profiel-title {
    margin: 0 0 10px;
    padding: 0;
    border: 0;
    color: var(--gd-text);
    font-size: 1.1rem;
    line-height: 1.25;
    font-weight: 700;
    letter-spacing: -0.01em;
}

.nummer-profiel-signal {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 8px;
    color: var(--gd-text);
    font-size: 1.02rem;
    font-weight: 650;
    line-height: 1.35;
}

.nummer-profiel-signal > span {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gd-text-muted);
}

.nummer-profiel-signal--danger > span { background: var(--gd-danger); }
.nummer-profiel-signal--warn > span { background: var(--gd-warn); }
.nummer-profiel-signal--safe > span { background: var(--gd-safe); }

.nummer-profiel-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 0;
    margin: 0 0 10px;
    color: var(--gd-text-muted);
    font-size: .88rem;
    line-height: 1.45;
}

.nummer-profiel-meta span:not(:last-child)::after {
    content: "·";
    margin: 0 10px;
    color: var(--gd-border-strong);
}

.nummer-profiel-advice {
    margin: 0 0 16px;
    color: var(--gd-text-soft);
    font-size: .92rem;
    line-height: 1.45;
}

.nummer-profiel-rating {
    display: grid;
    grid-template-columns: 130px minmax(0, 1fr);
    gap: 24px;
    align-items: start;
    margin: 4px 0 16px;
    padding: 18px 0 0;
    border-top: 1px solid color-mix(in srgb, var(--gd-border) 70%, transparent);
    min-width: 0;
}

.nummer-profiel-score {
    display: grid;
    gap: 6px;
    justify-items: start;
}

.nummer-profiel-cijfer {
    font-size: 2.75rem;
    font-weight: 740;
    line-height: 1;
    letter-spacing: -0.04em;
}

.nummer-profiel-score .stars {
    margin-top: 2px;
}

.nummer-profiel-count {
    color: var(--gd-text-muted);
    font-size: .8rem;
}

.nummer-profiel-bars {
    display: grid;
    gap: 7px;
    align-content: start;
    min-width: 0;
}

.nummer-profiel-bar-row {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) 28px;
    gap: 10px;
    align-items: center;
}

.nummer-profiel-bar-label {
    color: var(--gd-text-soft);
    font-size: .76rem;
    font-weight: 600;
    text-align: right;
}

.nummer-profiel-bar-track {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    height: 22px;
    border-radius: 6px;
    background: color-mix(in srgb, var(--gd-border) 35%, transparent);
    overflow: hidden;
}

.nummer-profiel-bar-fill {
    box-sizing: border-box;
    max-width: 100%;
    height: 100%;
    border-radius: 6px;
    transition: width 280ms cubic-bezier(.25, .8, .25, 1);
}

.nummer-profiel-bar-count {
    color: var(--gd-text-soft);
    font-size: .76rem;
    font-weight: 700;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.nummer-profiel-bar-fill--5 { background: #c33c48; }
.nummer-profiel-bar-fill--4 { background: #d96a20; }
.nummer-profiel-bar-fill--3 { background: #c9b800; }
.nummer-profiel-bar-fill--2 { background: #8ab800; }
.nummer-profiel-bar-fill--1 { background: #2da85a; }

.nummer-profiel-note {
    margin: 14px 0 0;
    color: var(--gd-text-muted);
    font-size: .76rem;
}

.nummer-profiel-note a {
    color: var(--gd-brand);
}

.community-btn:active,
.deelervaring a:active,
.nummer-cta-btn:active,
.community-vote-btn:active {
    transform: scale(0.97);
}

@media (prefers-reduced-motion: reduce) {
    #zoeken #search-form button:active,
    .community-btn:active,
    .deelervaring a:active,
    .nummer-cta-btn:active,
    .community-vote-btn:active {
        transform: none;
    }
    .nummer-profiel-bar-fill {
        transition: none;
    }
}

/* Legacy insights — kept for backwards compat if referenced elsewhere */
.community-insights {
    box-sizing: border-box;
    margin: 0 0 24px;
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    color: var(--gd-text);
    box-shadow: var(--gd-shadow-sm);
}

.community-insights--danger,
.community-insights--warn,
.community-insights--safe,
.community-insights--neutral { border-color: var(--gd-border); background: var(--gd-surface); }

.community-insights-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

#content .community-insights h2 {
    margin: 0;
    padding: 0;
    border: 0;
    color: var(--gd-text);
    font-size: clamp(1.25rem, 3vw, 1.55rem);
    line-height: 1.2;
    font-weight: 760;
    letter-spacing: -.025em;
}

.community-confidence {
    padding: 5px 9px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    color: var(--gd-text-soft);
    font-size: .72rem;
    font-weight: 750;
    white-space: nowrap;
}

#content .community-insights .community-insights-signal {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 14px 0 2px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: .95rem;
    line-height: 1.4;
    font-weight: 600;
}

.community-insights-signal > span {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--gd-text-muted);
}

.community-insights-signal--danger > span { background: var(--gd-danger); }
.community-insights-signal--warn > span { background: var(--gd-warn); }
.community-insights-signal--safe > span { background: var(--gd-safe); }

.community-insights-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.community-insights-stats div {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--gd-border);
    border-radius: 9px;
    background: var(--gd-surface-soft);
}

.community-insights-stats dt {
    color: var(--gd-text-muted);
    font-size: .68rem;
    font-weight: 700;
    line-height: 1.25;
}

.community-insights-stats dd {
    overflow-wrap: anywhere;
    color: var(--gd-text);
    font-size: .9rem;
    line-height: 1.3;
}

.community-insights-cats {
    margin: 14px 0 0;
    color: var(--gd-text-soft);
    font-size: .82rem;
}

.community-action-advice {
    margin: 16px 0 0;
    padding: 14px 16px;
    border-radius: 10px;
    background: var(--gd-surface-soft);
    list-style: none;
}

.community-action-advice li {
    position: relative;
    margin: 0;
    padding: 4px 0 4px 18px;
    color: var(--gd-text-soft);
    font-size: .92rem;
    line-height: 1.45;
}

.community-action-advice li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 11px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--gd-brand);
}

#content .community-insights .community-method-note {
    margin: 14px 0 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-muted);
    font-size: .76rem;
}

#commentaar2 {
    max-width: 770px;
    margin-top: 0;
}

#statistics {
    display: flex;
    gap: 9px;
    margin: 0 0 18px;
    padding: 0;
    border: 0;
    background: transparent;
}

#statistics > div {
    padding: 7px 10px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-text-soft);
    font-size: .82rem;
}

.rating-summary {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 28px;
    margin: 0 0 24px;
    padding: 24px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-sm);
}

.rating-summary #cijfer {
    float: none;
    width: auto;
    margin: 0;
    align-self: center;
    color: var(--gd-text) !important;
    font-size: 3.5rem;
    font-weight: 740;
}

.rating-summary #cijfer span {
    color: var(--gd-text-soft);
}

.rating-summary #ratingengine {
    float: none;
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: 80px minmax(0, 1fr);
    gap: 7px 10px;
    align-items: center;
}

.rating-summary .ratingtekst {
    float: none;
    margin: 0;
    color: var(--gd-text-soft);
    font-size: .78rem;
}

.rating-summary .ratebar {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 3px;
    border: 1px solid var(--gd-border);
    border-radius: 7px;
    background: var(--gd-surface-soft);
}

#content .nummer-samenvatting {
    margin: 0 0 22px;
    padding: 14px 16px;
    border: 1px solid var(--gd-border);
    border-radius: 10px;
    background: var(--gd-surface-soft);
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: .9rem;
}

.deelervaring a {
    float: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 15px;
    border-radius: 9px;
    background: var(--gd-brand);
    color: #fff;
    font-size: .87rem;
    font-weight: 750;
    text-decoration: none;
}

/* Review cards and actions */
#commentaar2 > ul {
    display: grid;
    gap: 12px;
    margin: 0;
}

#commentaar2 > ul > li.commentwithdate,
#commentaar2 > ul > li.commentwithdate:nth-child(even) {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: 105px minmax(0, 1fr);
    gap: 16px;
    margin: 0;
    padding: 18px;
    overflow: visible;
    border: 1px solid var(--gd-border);
    border-radius: 12px;
    background: var(--gd-surface);
    color: var(--gd-text);
    box-shadow: var(--gd-shadow-sm);
}

#commentaar2 li.commentwithdate > span[id^="rate"] {
    box-sizing: border-box;
    float: none;
    width: 105px;
    height: fit-content;
    margin: 0;
    padding: 6px 9px;
    border-radius: 999px;
    box-shadow: none;
    color: #fff;
    font-size: .76rem;
    font-weight: 750;
    line-height: 1.4;
}

#commentaar2 li.commentwithdate .review {
    box-sizing: border-box;
    float: none;
    width: auto;
    min-width: 0;
    min-height: 0;
    padding: 0;
    color: var(--gd-text);
    line-height: 1.55;
}

#commentaar2 li.commentwithdate .review > span {
    display: block;
    margin: 0 0 8px;
    padding: 0 0 8px;
    border-bottom: 1px solid var(--gd-border);
    color: var(--gd-text-muted);
    font-size: .76rem;
    font-style: normal;
}

#commentaar2 li.commentwithdate .review > div:not(.community-comment-actions) {
    overflow-wrap: anywhere;
    color: var(--gd-text);
    font-size: .93rem;
}

.community-comment-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    margin: 14px 0 0;
}

.community-vote-btn,
.community-report-btn {
    width: auto;
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 10px;
    border: 1px solid var(--gd-border-strong);
    border-radius: 8px;
    background: var(--gd-surface-soft);
    color: var(--gd-text-soft);
    font-size: .74rem;
    font-weight: 700;
}

.community-vote-btn:hover,
.community-report-btn:hover {
    border-color: var(--gd-brand);
    background: var(--gd-brand-soft);
    color: var(--gd-brand-strong);
}

.community-vote-btn[aria-pressed="true"] {
    border-color: var(--gd-brand);
    background: var(--gd-brand-soft);
    color: var(--gd-brand-strong);
}

.review .community-comment-actions span,
.review .community-comment-actions .community-vote-count {
    display: inline;
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
    color: inherit;
    font-size: inherit;
    font-style: normal;
    line-height: inherit;
}

.community-vote-count {
    min-width: 18px !important;
    padding: 1px 5px !important;
    border-radius: 999px !important;
    background: color-mix(in srgb, var(--gd-text) 8%, transparent);
    text-align: center;
}

.community-report-form-inline,
.community-report-form-inline[hidden] {
    width: 100%;
}

.community-report-form-inline[hidden] {
    display: none !important;
}

.community-report-form-inline:not([hidden]) {
    display: grid;
    grid-template-columns: minmax(170px, .7fr) minmax(220px, 1fr) auto;
    gap: 10px;
    align-items: end;
    margin-top: 10px;
    padding: 14px;
    border: 1px solid var(--gd-border);
    border-radius: 10px;
    background: var(--gd-surface-soft);
}

.community-report-form-inline label {
    display: grid;
    gap: 5px;
    color: var(--gd-text-soft);
    font-size: .72rem;
    font-weight: 700;
}

.community-report-form-inline select,
.community-report-form-inline input {
    box-sizing: border-box;
    width: 100%;
    min-height: 38px;
    padding: 7px 9px;
    border: 1px solid var(--gd-border-strong);
    border-radius: 7px;
    background: var(--gd-surface);
    color: var(--gd-text);
}

/* Structured contribution flow */
#content .community-report {
    clear: both;
    box-sizing: border-box;
    margin: 28px 0 0;
    padding: clamp(20px, 4vw, 30px);
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-md);
}

#content .community-report h2 {
    margin: 0;
    padding: 0;
    border: 0;
    color: var(--gd-text);
    font-size: 1.45rem;
    line-height: 1.25;
    font-weight: 760;
    letter-spacing: -.025em;
}

#content .community-report .community-report-intro,
#content .community-report .community-hint,
#content .community-report .community-progress,
#content .community-report .voorwaarden-tekst {
    margin: 8px 0 20px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    font-size: .88rem;
    line-height: 1.5;
}

.community-report-form {
    margin-top: 22px;
}

.community-step {
    min-height: 250px;
}

.community-step legend {
    margin-bottom: 16px;
    color: var(--gd-text);
    font-size: 1.05rem;
}

.community-step-num {
    width: 28px;
    height: 28px;
    background: var(--gd-brand);
    color: #fff;
    font-size: .76rem;
}

.community-chip-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.community-risk-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 9px;
}

.community-chip,
.community-risk {
    position: relative;
    box-sizing: border-box;
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px;
    border: 1px solid var(--gd-border);
    border-radius: 10px;
    background: var(--gd-surface-soft);
    color: var(--gd-text);
    font-size: .86rem;
    transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.community-chip:hover,
.community-risk:hover {
    border-color: var(--gd-brand);
    transform: translateY(-1px);
}

.community-chip:has(input:checked),
.community-risk:has(input:checked) {
    border-color: var(--gd-brand);
    background: var(--gd-brand-soft);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--gd-brand) 14%, transparent);
}

.community-chip input,
.community-risk input {
    width: 17px;
    height: 17px;
    margin: 0;
    flex: 0 0 auto;
    accent-color: var(--gd-brand);
}

.community-risk {
    min-height: 92px;
    display: grid;
    align-content: center;
}

.community-risk input {
    position: absolute;
    top: 10px;
    right: 10px;
}

.community-risk-label {
    color: var(--gd-text);
    font-size: .82rem;
}

.community-risk-short {
    color: var(--gd-text-muted);
    font-size: .72rem;
    line-height: 1.35;
}

#content .community-report-form textarea {
    box-sizing: border-box;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    height: 140px;
    padding: 12px 14px;
    border: 1px solid var(--gd-border-strong);
    border-radius: 10px;
    background: var(--gd-surface-soft);
    color: var(--gd-text);
    font-size: .95rem;
    resize: vertical;
}

.community-form-actions {
    justify-content: flex-end;
    padding-top: 18px;
    border-top: 1px solid var(--gd-border);
}

.community-btn {
    width: auto;
    min-height: 42px;
    padding: 9px 15px;
    border: 1px solid var(--gd-brand);
    border-radius: 9px;
    background: var(--gd-brand);
    color: #fff;
    font-size: .84rem;
    font-weight: 750;
}

.community-btn--secondary {
    border-color: var(--gd-border-strong);
    background: var(--gd-surface);
    color: var(--gd-text-soft);
}

#content .community-report .community-progress {
    margin: 10px 0 0;
    text-align: right;
}

.community-success {
    color: var(--gd-text);
}

.community-trust-page {
    max-width: 780px;
    padding: 24px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
}

#content .community-trust-page h1 {
    margin: 0 0 0.35rem;
    font-size: 1.75rem;
    line-height: 1.25;
    font-weight: 700;
}

#content .community-trust-page h3 {
    margin: 1.15rem 0 0.45rem;
    font-size: 1rem;
    line-height: 1.35;
    font-weight: 600;
    color: var(--gd-text);
}

#content .community-trust-page p {
    margin: 0.65rem 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    color: var(--gd-text-soft);
    line-height: 1.65;
}

#content .community-trust-page ul {
    margin: 0.35rem 0 1rem;
    padding-left: 1.4rem;
    list-style: disc;
}

#content .community-trust-page li {
    margin: 0.4rem 0;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: inherit;
    line-height: 1.6;
    overflow: visible;
}

#content .community-trust-page .community-method-updated {
    margin: 0 0 1.25rem;
    color: var(--gd-text-muted, var(--gd-text-soft));
}

#content .community-trust-page a {
    color: var(--gd-link, #007a9e);
}

.community-trust-table-wrap {
    margin: 0.75rem 0 1.25rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface-raised, var(--gd-surface));
}

#content .community-trust-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
    line-height: 1.55;
}

#content .community-trust-table th,
#content .community-trust-table td {
    padding: 0.75rem 1rem;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--gd-border);
}

#content .community-trust-table th {
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--gd-text-muted, var(--gd-text-soft));
    background: var(--gd-surface-muted, rgba(0, 0, 0, 0.03));
}

#content .community-trust-table tbody tr:last-child td {
    border-bottom: 0;
}

#content .community-trust-table tbody tr:hover {
    background: var(--gd-surface-hover, rgba(0, 165, 220, 0.04));
}

#content .community-trust-table td:first-child {
    font-weight: 600;
    color: var(--gd-text);
    width: 34%;
    min-width: 9.5rem;
}

#content .community-trust-table td:last-child {
    color: var(--gd-text-soft);
}

.community-trust-table-note {
    display: block;
    margin-top: 0.15rem;
    font-weight: 400;
    font-size: 0.88em;
    color: var(--gd-text-soft);
}

@media (max-width: 560px) {
    #content .community-trust-table thead {
        display: none;
    }

    #content .community-trust-table tbody tr {
        display: block;
        padding: 0.65rem 0;
        border-bottom: 1px solid var(--gd-border);
    }

    #content .community-trust-table tbody tr:last-child {
        border-bottom: 0;
    }

    #content .community-trust-table td {
        display: block;
        width: 100%;
        min-width: 0;
        padding: 0.35rem 1rem;
        border-bottom: 0;
    }

    #content .community-trust-table td:first-child {
        padding-bottom: 0.15rem;
    }

    #content .community-trust-table td:last-child {
        padding-top: 0;
        padding-bottom: 0.65rem;
    }
}

@media (max-width: 900px) {
    .community-home-grid {
        grid-template-columns: 1fr;
    }

    .home-stats-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .home-stat {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        text-align: left;
        padding-bottom: 12px;
        border-bottom: 1px solid var(--gd-border);
    }

    .home-stat:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }

    .home-stat dd {
        margin: 0;
        font-size: 1.35rem;
    }

    .community-insights-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .community-risk-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .community-report-form-inline:not([hidden]) {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    #header {
        padding-top: 13px;
    }

    #content {
        padding: 20px 14px 42px;
    }

    #content .community-hero {
        padding: 0;
    }

    .home-hero-search,
    .home-cta-search {
        flex-wrap: wrap;
        max-width: 100%;
    }

    .home-search-icon {
        flex: 0 0 auto;
        align-self: stretch;
    }

    .home-hero-search input,
    .home-cta-search input {
        flex: 1 1 auto;
        width: auto;
        min-width: 0;
        border-bottom: 0;
    }

    .home-hero-search button,
    .home-cta-search button {
        flex: 1 1 100%;
        border-left: 0;
        border-top: 1px solid var(--gd-border);
        padding: 14px 20px;
    }

    .home-activity-time {
        margin-left: 0;
        width: 100%;
    }

    .community-stream #commentaar.frontpage ul {
        grid-template-columns: 1fr;
    }

    .rating-summary {
        grid-template-columns: 1fr;
    }

    #commentaar2 > ul > li.commentwithdate,
    #commentaar2 > ul > li.commentwithdate:nth-child(even) {
        grid-template-columns: 1fr;
    }

    #commentaar2 li.commentwithdate > span[id^="rate"] {
        width: fit-content;
    }

    #commentaar2 li.commentwithdate .review {
        width: 100%;
        padding: 0;
    }

    .community-chip-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    #logo {
        min-height: 42px;
    }

    #logo svg {
        width: 38px;
        height: 38px;
        margin: 0;
    }

    #logo a,
    html[data-resolved-theme="dark"] #logo a {
        font-size: 1.65rem;
        line-height: 1;
    }

    #zoeken {
        padding: 8px 12px 0;
    }

    #search-form {
        max-width: none;
        border-radius: 10px;
    }

    #zoeken #search-form input {
        padding: 11px 8px;
        font-size: .94rem;
    }

    #zoeken #search-form button {
        width: 42px !important;
        min-width: 42px !important;
    }

    .nummer-profiel-rating {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .nummer-profiel-bar-row {
        grid-template-columns: 64px minmax(0, 1fr) 24px;
    }

    #content .community-section,
    #content .community-stream,
    #content .community-report,
    .community-insights {
        padding: 17px;
    }

    .community-section-heading,
    .community-insights-heading {
        align-items: flex-start;
    }

    .community-confidence {
        font-size: .66rem;
    }

    .community-insights-stats {
        grid-template-columns: 1fr 1fr;
    }

    .community-insights-stats div:last-child {
        grid-column: 1 / -1;
    }

    .community-live-feed-top time {
        width: 100%;
        margin-left: 0;
    }

    .community-risk-grid {
        grid-template-columns: 1fr 1fr;
    }

    .community-step {
        min-height: 330px;
    }

    .community-form-actions {
        justify-content: stretch;
    }

    .community-form-actions .community-btn {
        flex: 1 1 auto;
    }

    .community-report-form-inline:not([hidden]) {
        grid-template-columns: 1fr;
    }

    .community-comment-actions {
        align-items: stretch;
    }

    .community-vote-btn,
    .community-report-btn {
        flex: 1 1 auto;
        justify-content: center;
    }
}

/* Footer & overzicht nummer-chips — override legacy #footer font-weight: 100 */
#footer .nummer-chips a,
#nummeroverzicht .nummer-chips a {
    font-weight: 650;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.02em;
}

#footer h4,
#nummeroverzicht h3 {
    font-weight: 700;
}

/* Netnummer / landnummer hub pages */
#content .hub-page-intro,
#content .nummeroverzicht-meta {
    margin: 0 0 18px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--gd-text-muted);
    font-size: .95rem;
    line-height: 1.55;
}

#content #plaatsoverzicht ul {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0 0 28px;
    float: none;
    clear: both;
}

#content #plaatsoverzicht ul li {
    float: none;
    width: auto;
    padding: 0;
    margin: 0;
}

#content #plaatsoverzicht ul li a {
    display: block;
    padding: 8px 14px;
    border: 1px solid var(--gd-border);
    border-radius: 999px;
    background: var(--gd-surface);
    color: var(--gd-brand);
    font-size: .88rem;
    font-weight: 650;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: border-color .15s ease, background .15s ease;
}

#content #plaatsoverzicht ul li a:hover {
    border-color: var(--gd-border-strong);
    background: var(--gd-surface-soft);
    color: var(--gd-brand-strong);
}

#content #nummeroverzicht {
    margin-top: 8px;
    padding: 20px 18px;
    border: 1px solid var(--gd-border);
    border-radius: var(--gd-radius);
    background: var(--gd-surface);
    box-shadow: var(--gd-shadow-sm);
    text-align: left;
}

#content #nummeroverzicht h3 {
    margin: 0 0 6px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--gd-text);
    font-size: 1.05rem;
    font-weight: 720;
    line-height: 1.35;
    text-align: left;
}

#content #plaatsoverzicht h3 {
    margin: 0 0 12px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--gd-text);
    font-size: 1.05rem;
    font-weight: 720;
    line-height: 1.35;
}

#content #nummeroverzicht .nummer-chips {
    justify-content: flex-start;
    margin-bottom: 0;
}

#content #nummeroverzicht .paginas {
    margin-top: 16px;
}

#content hr {
    border: 0;
    border-top: 1px solid var(--gd-border);
    margin: 16px 0 20px;
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
