.rc {
    --rc-ink: #171717;
    --rc-text: #404040;
    --rc-muted: #6b6b6b;
    --rc-line: #ececec;
    --rc-wash: #f5f5f6;
    --rc-coral: #e25848;
    --rc-good: #047857;
    --rc-good-bg: #ecfdf5;
    --rc-bad: #b9281c;
    --rc-bad-bg: #fdf1ef;
    --rc-warn: #9a4d00;
    --rc-warn-bg: #fff6e5;
    --rc-pad: 30px;
    container-type: inline-size;
    overflow: clip;
    color: var(--rc-text);
    font-family: 'Roboto', system-ui, sans-serif;
    font-size: 15px;
    line-height: 1.55;
}
.rc :where(h2, h3, h4, p, ul, ol, dl, dd, dt) { margin: 0; padding: 0; border: 0; list-style: none; }
.rc :where(h2, h3, h4) { background: none; color: var(--rc-ink) !important; font-family: inherit; font-size: inherit; font-weight: 600; letter-spacing: normal; line-height: 1.3; text-transform: none; }
.rc .material-symbols-outlined { flex-shrink: 0; font-size: 19px !important; line-height: 1; }
.rc .rc-fill { font-variation-settings: 'FILL' 1; }

/* Summary */
.rc-hero { padding: 0 0 20px; }
.rc-hero__top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding: 13px var(--rc-pad); background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 50%, #1a1a1a 100%); }
.rc .rc-hero__top .ld-sec-title { color: #fff !important; }
.rc-hero__id { display: flex; align-items: center; gap: 12px; min-width: 0; }
.rc .rc-hero__badge { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 11px; background: var(--rc-coral); color: #fff; font-size: 21px !important; }
.rc-subject { margin-top: 1px !important; color: rgb(255 255 255 / .72); font-size: 13.5px; }
.rc-verdict { max-width: 62ch; margin: 16px var(--rc-pad) 0 !important; color: var(--rc-ink); font-size: 17px; font-weight: 600; line-height: 1.4; letter-spacing: -.005em; }
.rc-summary { max-width: 72ch; margin: 6px var(--rc-pad) 0 !important; }
.rc-scores { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 14px var(--rc-pad) 0 !important; padding: 14px 0; border-radius: 16px; background: var(--rc-wash); }
.rc-score { display: grid; grid-template-rows: 1fr auto auto; min-width: 0; padding: 0 16px; border-left: 1px solid #e2e2e4; }
.rc-score:first-child { border-left: 0; }
.rc-score dt { display: flex; align-items: center; gap: 6px; color: var(--rc-text); font-size: 13.5px; font-weight: 500; line-height: 1.25; }
.rc-score dt .material-symbols-outlined { color: var(--rc-coral); font-size: 17px !important; }
.rc-score dd { display: contents; }
.rc-score__n { margin-top: 5px; color: var(--rc-ink); font-size: 22px; font-weight: 700; line-height: 1.15; letter-spacing: -.015em; font-variant-numeric: tabular-nums; }
.rc-score__n--empty { color: var(--rc-muted); font-weight: 400; }
.rc-gauge { position: relative; display: block; height: 6px; margin-top: 7px; overflow: clip; background: #dedee0; -webkit-mask: repeating-linear-gradient(90deg, #000 0 calc(10% - 2px), transparent calc(10% - 2px) 10%); mask: repeating-linear-gradient(90deg, #000 0 calc(10% - 2px), transparent calc(10% - 2px) 10%); }
.rc-gauge::before { content: ''; position: absolute; inset: 0; width: calc(var(--v, 0) * 10%); background: var(--rc-gauge, #a3a3a3); transform-origin: left; transition: transform .8s cubic-bezier(.2, .7, .2, 1); }
.rc-gauge--high { --rc-gauge: #059669; }
.rc-gauge--mid { --rc-gauge: #d97706; }
.rc-gauge--low { --rc-gauge: #dc2626; }
.rc-scores--idle .rc-gauge::before { transform: scaleX(0); transition: none; }

/* Greek market facts */
.rc-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 14px 18px; padding: 0 var(--rc-pad) 16px; border-bottom: 1px solid var(--rc-line); }
.rc-fact { position: relative; min-width: 0; padding-left: 44px; }
.rc .rc-fact__i { position: absolute; top: 50%; left: 0; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--rc-wash); color: var(--rc-coral); font-size: 19px !important; transform: translateY(-50%); }
.rc .rc-fact__i--good { background: var(--rc-good-bg); color: var(--rc-good); }
.rc .rc-fact__i--warn { background: var(--rc-warn-bg); color: var(--rc-warn); }
.rc-fact dt { color: var(--rc-muted); font-size: 13px; }
.rc-fact dd { color: var(--rc-ink); font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; }
.rc-fact dd.rc-is-good { color: var(--rc-good); }
.rc-fact dd.rc-is-warn { color: var(--rc-warn); }

/* Notices */
.rc-approx { display: flex; gap: 10px; padding: 12px var(--rc-pad); background: var(--rc-warn-bg); color: var(--rc-warn); font-size: 14px; }

/* Tabs */
.rc-tabs { display: flex; flex-wrap: wrap; gap: 2px; margin: 18px var(--rc-pad) 0; padding: 4px; border-radius: 14px; background: var(--rc-wash); }
.rc-tab { flex: 1 1 auto; padding: 8px 13px; text-align: center; border: 0; border-radius: 10px; background: transparent; color: var(--rc-muted); font: inherit; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; transition: color .15s, background-color .15s; }
.rc-tab:hover { color: var(--rc-ink); }
.rc-tab[aria-selected="true"] { background: #fff; color: var(--rc-ink); box-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 0 0 1px rgb(0 0 0 / .03); }
.rc-tab:focus-visible, .rc-more:focus-visible, .rc-check input:focus-visible { outline: 2px solid var(--rc-coral); outline-offset: 2px; }
.rc-panels { padding: 22px var(--rc-pad) 26px; }

/* Shared building blocks */
.rc-stack { display: grid; gap: 24px; }
.rc-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 24px; }
.rc-bento { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.rc-bento--wide { grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); }
.rc-tile { min-width: 0; padding: 14px 16px; border-radius: 14px; background: var(--rc-wash); }
.rc-tile--reco { background: var(--rc-good-bg); }
.rc-tile--reco .rc-label .material-symbols-outlined { color: var(--rc-good); }
.rc .rc-h { display: flex; align-items: center; gap: 7px; margin-bottom: 8px; font-size: 15px; }
.rc-h .material-symbols-outlined { color: var(--rc-coral); }
.rc-col { min-width: 0; padding: 16px 18px 8px; border-radius: 16px; }
.rc-col--good { background: #f1faf6; }
.rc-col--bad { background: #fdf3f1; }
.rc-col--good .rc-h .material-symbols-outlined { color: var(--rc-good); }
.rc-col--bad .rc-h .material-symbols-outlined { color: var(--rc-bad); }
.rc-col .rc-list > li { border-top-color: rgb(0 0 0 / .07); }
.rc-label { display: flex; align-items: center; gap: 6px; color: var(--rc-muted); font-size: 13px; }
.rc-label .material-symbols-outlined { color: var(--rc-coral); font-size: 17px !important; }
.rc-value { display: block; margin-top: 2px; color: var(--rc-ink); font-size: 20px; font-weight: 700; line-height: 1.25; letter-spacing: -.015em; font-variant-numeric: tabular-nums; }
.rc-value small { color: var(--rc-muted); font-size: 13px; font-weight: 500; letter-spacing: 0; }
.rc-pick { display: block; margin-top: 2px; color: var(--rc-ink); font-size: 17px; font-weight: 700; line-height: 1.3; letter-spacing: -.01em; overflow-wrap: anywhere; }
.rc-note { margin-top: 6px; color: var(--rc-muted); font-size: 13.5px; }
.rc-empty { padding: 14px 0; color: var(--rc-muted); font-size: 14px; }
.rc-fine { color: var(--rc-muted); font-size: 13px; }

/* Lists */
.rc-list > li { display: flex; gap: 10px; padding: 11px 0; border-top: 1px solid var(--rc-line); }
.rc-list > li > .material-symbols-outlined { margin-top: 1px; }
.rc-list__t { display: block; color: var(--rc-ink); font-weight: 600; }
.rc-list__d { display: block; margin-top: 2px; font-size: 14px; }
.rc-good { color: var(--rc-good); }
.rc-bad { color: var(--rc-bad); }
.rc-warn { color: var(--rc-warn); }
.rc-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.rc-chip { padding: 4px 11px; border-radius: 999px; font-size: 14px; font-weight: 600; font-variant-numeric: tabular-nums; }
.rc-chip--good { background: var(--rc-good-bg); color: var(--rc-good); }
.rc-chip--bad { background: var(--rc-bad-bg); color: var(--rc-bad); }

/* Known issues */
.rc-issue { padding: 14px 0; border-top: 1px solid var(--rc-line); }
.rc-issue__head { display: flex; align-items: flex-start; gap: 12px; }
.rc-issue__main { flex: 1; min-width: 0; }
.rc-issue__title { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.rc .rc-issue__name { font-size: 15px; }
.rc-sev { padding: 1px 8px; border-radius: 999px; font-size: 12.5px; font-weight: 600; }
.rc-sev--critical { background: var(--rc-bad-bg); color: var(--rc-bad); }
.rc-sev--high { background: #fff0e3; color: #a84300; }
.rc-sev--medium { background: var(--rc-warn-bg); color: var(--rc-warn); }
.rc-sev--low { background: #eef4ff; color: #1d4fb8; }
.rc-sev--minor { background: var(--rc-wash); color: var(--rc-muted); }
.rc-issue__sub { margin-top: 2px; font-size: 14px; }
.rc-meta { display: flex; flex-wrap: wrap; gap: 2px 14px; margin-top: 4px; color: var(--rc-muted); font-size: 13px; font-variant-numeric: tabular-nums; }
.rc-issue__cost { color: var(--rc-ink); font-weight: 600; white-space: nowrap; font-variant-numeric: tabular-nums; }
.rc-more { display: flex; flex-shrink: 0; padding: 3px; border: 0; border-radius: 8px; background: transparent; color: var(--rc-muted); cursor: pointer; }
.rc-more:hover { background: var(--rc-wash); color: var(--rc-ink); }
.rc-more .material-symbols-outlined { transition: transform .2s; }
.rc-more[aria-expanded="true"] .material-symbols-outlined { transform: rotate(180deg); }
.rc-issue__more { display: grid; gap: 10px; margin-top: 10px; padding: 12px 14px; border-radius: 12px; background: var(--rc-wash); font-size: 14px; }
.rc-issue__more strong { display: block; color: var(--rc-ink); font-weight: 600; }

/* Rows and tables */
.rc-row { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 11px 0; border-top: 1px solid var(--rc-line); }
.rc-row__v { flex-shrink: 0; color: var(--rc-ink); font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; }
.rc-row__v small { display: block; color: var(--rc-muted); font-size: 12.5px; font-weight: 400; }
.rc-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.rc-table th, .rc-table td { padding: 11px 0 11px 14px !important; border: 0; border-top: 1px solid var(--rc-line); background: none; text-align: right; }
.rc-table th:first-child { padding-left: 0 !important; text-align: left; }
.rc-table thead th { border-top: 0; padding-top: 0 !important; color: var(--rc-muted); font-size: 13px; font-weight: 400; }
.rc-table tbody th { color: var(--rc-text); font-weight: 400; }
.rc-table .rc-real { color: var(--rc-ink); font-weight: 700; }

/* Five-year cost */
.rc-bar { display: flex; gap: 3px; height: 12px; margin: 14px 0 12px; }
.rc-bar > span { flex-basis: 0; min-width: 4px; border-radius: 3px; }
.rc-c1 { background: #404040; }
.rc-c2 { background: #8a8a8a; }
.rc-c3 { background: #bdbdbd; }
.rc-c4 { background: #ececec; }
.rc-bar > .rc-c4 { min-width: 0; }
.rc-legend { display: flex; flex-wrap: wrap; gap: 4px 18px; font-size: 14px; font-variant-numeric: tabular-nums; }
.rc-legend > span { display: inline-flex; align-items: center; gap: 7px; }
.rc-legend i { width: 9px; height: 9px; border-radius: 2px; }
.rc-legend b { color: var(--rc-ink); font-weight: 600; }

/* Spec sheet */
.rc-specs { display: grid; grid-template-columns: repeat(auto-fill, minmax(165px, 1fr)); gap: 14px 22px; }
.rc-specs dt { color: var(--rc-muted); font-size: 13px; }
.rc-specs dd { color: var(--rc-ink); font-weight: 600; overflow-wrap: anywhere; }
.rc-specs dd small { display: block; color: var(--rc-muted); font-size: 12.5px; font-weight: 400; }
.rc-popular { margin-left: 6px; color: var(--rc-good); font-size: 13px; font-weight: 600; }

/* Red flags and checklist */
.rc-flags { padding: 16px 18px; border-radius: 16px; background: var(--rc-bad-bg); }
.rc-flags .rc-h { color: var(--rc-bad) !important; }
.rc-flags .rc-h .material-symbols-outlined { color: inherit; }
.rc-flags li { display: flex; gap: 9px; padding: 5px 0; color: #7c1d14; font-weight: 500; }
.rc-flags li .material-symbols-outlined { margin-top: 2px; color: var(--rc-bad); }
.rc-check-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.rc-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 30px; }
.rc-check { display: flex; align-items: flex-start; gap: 10px; padding: 9px 0; border-top: 1px solid var(--rc-line); cursor: pointer; }
.rc-check input { flex-shrink: 0; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--rc-coral); cursor: pointer; }
.rc-check input:checked + span { color: var(--rc-muted); text-decoration: line-through; }

/* Footer */
.rc-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 2px 16px; padding: 12px var(--rc-pad); border-top: 1px solid var(--rc-line); color: var(--rc-muted); font-size: 13px; }

/* Technical specs tiles */
.rs-tiles { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 8px; }
.rs-tiles > * { min-width: 0; padding: 10px; }
.rs-tiles .items-baseline { flex-wrap: wrap; }
.rs-tiles .items-baseline > .text-xs { white-space: nowrap; }

.rc-tabs-wrap { display: contents; }
@media (max-width: 640px) {
    .rc-tabs-wrap { display: block; position: relative; margin: 18px var(--rc-pad) 0; overflow: hidden; border-radius: 14px; }
    .rc-tabs-wrap::before, .rc-tabs-wrap::after { content: ""; position: absolute; top: 0; bottom: 0; z-index: 1; width: 30px; opacity: 0; pointer-events: none; transition: opacity .15s; }
    .rc-tabs-wrap::before { left: 0; background: linear-gradient(90deg, var(--rc-wash), transparent); }
    .rc-tabs-wrap::after { right: 0; background: linear-gradient(270deg, var(--rc-wash), transparent); }
    .rc-tabs-wrap.more-left::before, .rc-tabs-wrap.more-right::after { opacity: 1; }
    .rc .rc-tabs { flex-wrap: nowrap; margin: 0; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
    .rc .rc-tabs::-webkit-scrollbar { display: none; }
    .rc .rc-tab { flex: 0 0 auto; }
}

/* Phones: one scrolling row that runs to the card edge, so the next button is visibly cut. */
@media (max-width: 640px) {
    .rs-tabs-wrap { position: relative; margin-bottom: 14px; }
    .rs-tabs-wrap::before, .rs-tabs-wrap::after { content: ""; position: absolute; top: 0; bottom: 0; z-index: 1; width: 30px; opacity: 0; pointer-events: none; transition: opacity .15s; }
    .rs-tabs-wrap::before { left: -18px; background: linear-gradient(90deg, #fff, transparent); }
    .rs-tabs-wrap::after { right: -18px; background: linear-gradient(270deg, #fff, transparent); }
    .rs-tabs-wrap.more-left::before, .rs-tabs-wrap.more-right::after { opacity: 1; }
    nav.rs-tabs { flex-wrap: nowrap; margin: 0 -18px; padding: 2px 18px 6px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; }
    nav.rs-tabs::-webkit-scrollbar { display: none; }
    nav.rs-tabs button { flex-shrink: 0; height: 38px; padding: 0 14px; border-radius: 10px; font-size: 13px; }
    nav.rs-tabs button .material-symbols-outlined { font-size: 17px !important; }
    div.rs-panels { padding: 0; border: 0; border-radius: 0; background: none; }
}

@container (max-width: 720px) {
    .rc-scores, .rc-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rc-scores { row-gap: 14px; }
    .rc-score:nth-child(odd) { border-left: 0; }
}
@container (max-width: 620px) {
    .rc-scores { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 20px; }
    .rc-split, .rc-check-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
    .rc { --rc-pad: 18px; }
    .rc-fact { padding-left: 38px; }
    .rc .rc-fact__i { width: 30px; height: 30px; font-size: 17px !important; }
    .rc-fact dd { font-size: 14px; }
}
@container (max-width: 340px) {
    .rc-facts { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 340px) {
    .rs-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .rs-tiles .items-center > .material-symbols-outlined { display: none; }
    .rs-tiles .items-center > span { font-size: 9.5px; letter-spacing: 0; }
}
