/* Ranking product context v1.3. Load after the existing Topchart stylesheet. */
.atc-tc .atc-tc__hero h1 { font-size:32px; }
.atc-tc .atc-tc__hero p { font-size:16px; }
.atc-tc .atc-tc__section-head h2 { font-size:23px; }
.atc-tc__brand-logo[hidden] { display:none!important; }
.atc-tc .atc-tc__card { grid-template-columns:120px minmax(0,1fr) 156px; }
.atc-tc .atc-tc__rank { font-size:21px; }
.atc-tc .atc-tc__brand { position:relative; min-height:26px; font-size:13px; letter-spacing:0; font-weight:400; }
.atc-tc__brand-logo { display:block; width:96px; max-width:100%; height:26px; object-fit:contain; object-position:left center; }
.atc-tc__brand.has-logo .atc-tc__brand-name { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.atc-tc .atc-tc__info h3 { margin:4px 0; font-size:16px; font-weight:500; line-height:1.35; }
.atc-tc .atc-tc__tags { font-size:12px; }
.atc-tc .atc-tc__tags .atc-tc__size { font-size:14px; }
.atc-tc .atc-tc__eco { display:block; border:0; padding-top:0; margin-top:10px; font-size:12px; }
.atc-tc__eco-label { display:block; font-size:11px; margin-bottom:2px; }
.atc-tc__eco>div { display:flex; flex-wrap:wrap; gap:2px 12px; }
.atc-tc .atc-tc__eco b { font-size:13px; }
.atc-tc .atc-tc__reference-price { margin:6px 0 0; color:#596474; font-size:12px; line-height:1.6; }
.atc-tc__reference-price strong { font-size:15px; font-weight:500; color:#35485f; font-variant-numeric:tabular-nums; }
.atc-tc__ranking-stat { grid-column:3; grid-row:1; min-width:0; display:flex; flex-direction:column; gap:3px; padding-left:14px; border-left:1px solid #edf0f4; }
.atc-tc__ranking-stat>span { font-size:13px; color:#35485f; }
.atc-tc__ranking-stat>strong { color:#1b2738; font-size:25px; font-weight:600; line-height:1.4; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.atc-tc__ranking-stat small { font-size:13px; font-weight:400; }
.atc-tc__ranking-stat>a { display:inline-flex; align-items:center; min-height:40px; color:#647185; font-size:13px; text-decoration:underline; text-underline-offset:3px; }
.atc-tc .atc-tc__scores { grid-column:2/-1; grid-row:2; padding-top:0; margin-top:0; border:0; }
.atc-tc__scores>summary { padding:6px 0; min-height:36px; font-size:13px; color:#596474; cursor:pointer; }
.atc-tc__scores[open] .atc-tc__score-grid { margin-top:8px; }
.atc-tc__scores>summary:focus-visible { outline:3px solid #326cac; outline-offset:3px; }
@media(max-width:767px) {
 .atc-tc .atc-tc__card { grid-template-columns:86px minmax(0,1fr); }
 .atc-tc .atc-tc__rank { font-size:19px; }
 .atc-tc .atc-tc__info h3 { font-size:17px; font-weight:700; }
 .atc-tc__ranking-stat { grid-column:1/-1; grid-row:2; border-left:0; border-top:1px solid #edf0f4; padding:10px 0 0; display:grid; grid-template-columns:1fr auto; gap:1px 12px; }
 .atc-tc__ranking-stat>span { grid-column:1; font-size:11px; }
 .atc-tc__ranking-stat>strong { grid-column:1; font-size:22px; }
 .atc-tc__ranking-stat>a { grid-column:2; grid-row:1/3; min-height:44px; }
 .atc-tc .atc-tc__scores { grid-column:1/-1; grid-row:3; }
}
@media(max-width:359px) {
 .atc-tc .atc-tc__card { grid-template-columns:70px minmax(0,1fr); }
 .atc-tc .atc-tc__info h3 { font-size:15px; }
 .atc-tc__ranking-stat>strong { font-size:20px; }
}
@media(max-width:600px) {
 .atc-tc .atc-tc__hero h1 { font-size:24px; }
 .atc-tc .atc-tc__section-head h2 { font-size:21px; }
}
