/*
 * Strategisch-Beleggen.nl — Modern UI DS1-R1 candidate
 * Status: PREVIEW ONLY / NOT PRODUCTION-AUTHORIZED
 * Source grounded: CP205-A30-DS1 read-only capture, 2026-09-08.
 * Purpose: semantic rounded component language without rewriting legacy style.css.
 */

:root {
    --sb-radius-xs: 4px;
    --sb-radius-sm: 6px;
    --sb-radius-md: 8px;
    --sb-radius-lg: 12px;
    --sb-radius-pill: 999px;
}

/* Shared controls: compact rounding, no typography/layout rewrite. */
.button,
input:not([type]),
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
textarea,
.selectWrapper,
.selectWrapper select,
.notice {
    border-radius: var(--sb-radius-sm);
}

input[type="checkbox"] + label:before,
input[type="checkbox"] + label:after,
.sectionHeader:after {
    border-radius: var(--sb-radius-xs);
}

/* Existing fixed modal trigger is a tab attached to the viewport edge. */
.showModal {
    border-radius: var(--sb-radius-md) var(--sb-radius-md) 0 0;
}

/* Comparator: preserve strict filtering/behavior and Strategisch left-accent identity. */
.comparePage .sorting .option {
    border-radius: var(--sb-radius-sm);
}

.comparePage .filter .filterGroup,
.comparePage .result.divTable {
    border-radius: var(--sb-radius-md);
}

.comparePage .sbActiveFiltersStrategisch {
    border-radius: 0 var(--sb-radius-md) var(--sb-radius-md) 0;
}

.comparePage .sbActiveFiltersStrategisch .sbActiveFilterChip {
    border-radius: var(--sb-radius-pill);
}

/* Homepage / article cards: round bounded cards, never full-width rails. */
.articles a.materialShadow,
.blogOverview > a.materialShadow {
    border-radius: var(--sb-radius-md);
    overflow: hidden;
}

/* Existing homepage borderRadius wrappers are semantically bounded split modules. */
.text .borderRadius {
    border-radius: var(--sb-radius-lg);
    overflow: hidden;
}

/* Legacy review: bounded content modules only; hero/overall review rail stays structural. */
.reviewPage .review .contents .items,
.reviewPage #rating,
.reviewPage .review .procons .pros,
.reviewPage .review .procons .cons,
.reviewPage .review .textblock,
.reviewPage .review .faq,
.reviewPage .ratingAvg,
.reviewPage .writeReview {
    border-radius: var(--sb-radius-md);
}

.reviewPage .review .rating .grade .bold,
.reviewPage .writeReview .rating label,
.reviewPage .review .specs .label {
    border-radius: var(--sb-radius-sm);
}

/* Regular-page Top-5 result shells: use the component boundary, not table cells. */
.result.top5,
.result.top5 > .result.divTable {
    border-radius: var(--sb-radius-md);
}

/* Explicit exclusions are intentional:
 * - header/nav/footer/global hero/full-width rails stay structural;
 * - table cells are not rounded;
 * - images are not globally rounded;
 * - .modal__* is untouched until css/modal.css is captured;
 * - Hybrid review keeps its own namespaced reviewHybrid.css canary styling.
 */
