/* RANK · compact glass surfaces. Settings remain inherited from Studio. */
.public-site .orbit-bar{height:62px}
.public-site .hero{margin-top:12px;margin-bottom:16px;padding-block:42px}
.public-site .page-columns{margin-top:18px}
.public-site .home-paths{padding-block:9px;gap:7px;justify-content:flex-start}
.public-site .home-paths a{padding:8px 12px;min-height:36px}
.public-site .section-heading{margin-bottom:18px;gap:16px}
.public-site .section-heading .eyebrow{margin-bottom:8px}
.public-site .page-content .section-heading h2{font-size:clamp(25px,2.4vw,32px)}
.public-site .top-intro{margin-top:9px;font-size:12px}
.public-site .carousel-track.flow-ready{padding-top:14px;padding-bottom:25px;mask-image:linear-gradient(90deg,transparent,#000 48px,#000 calc(100% - 48px),transparent)}
.public-site .flow-ready>.flow-slide+.flow-slide{margin-left:-48px}
.public-site .flow-ready .card-body h3{font-size:22px;line-height:1.22}
.public-site .flow-ready>.news-card{min-height:218px}
.public-site .flow-ready>.promo-card{min-height:280px}
.public-site .news-card h3{margin:14px 0 10px;font-size:20px}
.public-site .news-card p{font-size:12px;margin-bottom:18px}
.public-site .promo-brand{height:86px;margin-bottom:14px;padding:12px 18px;background:radial-gradient(ellipse at 50% 100%,#4f794a12,transparent 80%),#0003}
.public-site .promo-brand .casino-brandmark{max-width:200px;max-height:62px}
.public-site .promo-card>p{min-height:38px;margin-bottom:16px;font-size:12px}
.public-site .promo-disclaimer{margin-top:10px}
.collection-view{width:44px;height:44px;display:grid;place-items:center;border:1px solid #b9dfc52b;border-radius:12px;background:#14261b60;color:var(--muted);cursor:pointer;flex:none}
.collection-view .icon{width:16px;height:16px}.collection-view[aria-pressed=true]{color:var(--accent);border-color:#c9ff2e55;background:#c9ff2e0c}
.collection-view:focus-visible,.rating-view button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.carousel-section.is-tiled .carousel-count,.carousel-section.is-tiled .carousel-arrow{display:none}
.public-site .carousel-track.flow-grid{display:grid;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px 0 20px;overflow:visible;mask-image:none;scroll-snap-type:none;cursor:auto;user-select:auto}
.public-site .flow-grid>.flow-slide{transform:none!important;opacity:1!important;margin:0!important;width:auto;min-width:0;z-index:auto}
.public-site .flow-grid .card-body h3{font-size:21px}
/* The rank lives on the surface; no separate empty number column. */
.rating-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 18px;font-size:10px;color:var(--muted)}
.rating-view{display:flex;gap:3px;padding:3px;border:1px solid #b8e2c51c;border-radius:11px;background:#0c120e66}
.rating-view[hidden]{display:none}
.rating-view button{display:flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;background:transparent;color:var(--muted);min-height:36px;padding:7px 10px;font:inherit;font-size:11px;cursor:pointer}
.rating-view button[aria-pressed=true]{background:#c9ff2e12;color:var(--accent);box-shadow:inset 0 0 0 1px #c9ff2e29}
.rating-view .icon{width:14px;height:14px}
.public-site .top-casino-list{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding-top:4px}
.public-site .top-casino-row{position:relative;display:grid;grid-template-columns:100px minmax(0,1fr) 132px;gap:14px;align-items:center;min-height:112px;padding:18px 16px 14px;overflow:visible}
.public-site .top-casino-row .top-rank{position:absolute;top:-11px;right:16px;display:flex;align-items:center;justify-content:center;gap:5px;min-width:40px;height:22px;padding:0 8px;border:1px solid #749a7060;border-radius:7px;background:#17241b;color:#b8d2bb;font-size:11px;font-weight:750;letter-spacing:-.03em;z-index:4;box-shadow:0 5px 12px #0005}
.public-site .top-rank .icon{width:12px;height:12px}.public-site .top-casino-row.is-first .top-rank{color:var(--accent);border-color:#c9ff2e55;background:#273614}
.public-site .top-brand{grid-column:1;grid-row:1;align-self:center;width:100%;height:68px;padding:10px;background:linear-gradient(145deg,#142219dd,#080d0bdd);border:1px solid #9ed1ac30;border-radius:13px;box-shadow:0 10px 18px -10px #000b,inset 0 1px 0 #e4ffeb12;overflow:hidden;z-index:2}
.public-site .rating-popout .top-brand{align-self:start;margin-top:-27px;transform:rotate(-3deg)}
.public-site .top-brand .casino-brandmark{max-height:48px;max-width:100%}
.public-site .top-brand .beer-logo-crop{width:92px}
.public-site .top-casino-info{grid-column:2;grid-row:1;align-self:center;min-width:0}
.public-site .top-casino-info h3{font-size:15px;line-height:1.3;margin:0 0 6px;padding-right:4px}
.public-site .top-casino-info p{font-size:11px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.public-site .top-casino-info>small{font-size:9px;margin-top:6px}
.public-site .top-casino-actions{grid-column:3;grid-row:1;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin:0}
.public-site .top-code{min-height:42px;padding:6px 10px;font-size:11px;gap:10px}
.public-site .top-code small{font-size:7px;margin-bottom:3px}
.public-site .top-review{min-height:36px;padding:7px 10px;font-size:11px}
.public-site .top-expand{margin-top:18px}.public-site .top-expand>summary{min-height:42px;font-size:11px}
.public-site .top-expand[open]>summary{margin-bottom:22px}
.public-site .top-note{margin-top:12px;font-size:9px}
.casino-marks{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 8px;position:relative;z-index:3}
.casino-mark{--mark:#a9dab8;display:inline-flex;align-items:center;gap:4px;font-size:8px;line-height:1.2;font-weight:800;letter-spacing:.06em;padding:4px 6px;color:var(--mark);background:color-mix(in srgb,var(--mark) 9%,#0e1411 91%);border:1px solid color-mix(in srgb,var(--mark) 36%,transparent);border-radius:6px;box-shadow:0 3px 8px #0003;white-space:nowrap}
.casino-mark .icon{width:11px;height:11px;flex:none}
.mark-top{--mark:#d5ed8a}.mark-new{--mark:#70e2be}.mark-legend{--mark:#d4b8ff}.mark-crypto{--mark:#80c7ff}.mark-hot{--mark:#ffb776}.mark-scam{--mark:#ff727c}.mark-paused{--mark:#dbc4a0}
.public-site .rating-popout .top-casino-info:has(.casino-marks){align-self:start;margin-top:-28px}
.public-site .rating-popout .top-casino-info .casino-marks{min-height:22px;max-width:calc(100% - 35px);margin-bottom:9px}
.casino-stamp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-12deg);padding:6px 18px 5px;border:3px double #ec6776;border-radius:5px;color:#ff7b86;background:#1d0e13de;box-shadow:0 4px 18px #0007;font-size:clamp(19px,3vw,30px);line-height:1;font-weight:900;letter-spacing:.12em;z-index:5;pointer-events:none;white-space:nowrap}
.casino-closed-label{display:inline-block;color:#ff8790;border:1px solid #ef6d7766;background:#4b18264d;font-size:9px;font-weight:800;letter-spacing:.12em;border-radius:5px;padding:4px 7px;margin-bottom:7px}
.public-site .casino-is-blocked .top-brand,.public-site .casino-is-blocked .promo-brand{filter:saturate(.35);opacity:.7}
.public-site .casino-is-blocked .top-casino-info p{opacity:.6}
.public-site .promo-card{position:relative}.public-site .promo-card>.casino-marks{margin-top:-28px;margin-bottom:12px}
.public-site .promo-card>.casino-stamp{font-size:30px}
.public-site .casino-info .casino-marks{gap:3px;margin-bottom:5px}.public-site .casino-info .casino-mark{font-size:7px;padding:2px 4px}.public-site .casino-info .casino-mark .icon{width:9px;height:9px}
.public-site .review-entry-copy>.casino-marks{margin-bottom:14px}
/* Two complete tiles, with the same actions and SSR content. */
.public-site [data-rating][data-view=grid] .top-casino-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}
.public-site [data-rating][data-view=grid] .top-casino-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:18px 16px 14px;align-content:start;min-height:220px}
.public-site [data-rating][data-view=grid] .top-brand{grid-column:1;grid-row:1;width:100px;justify-self:start}
.public-site [data-rating][data-view=grid] .top-casino-info{grid-column:1;grid-row:2;margin-top:0;align-self:start}
.public-site [data-rating][data-view=grid] .top-casino-info .casino-marks{max-width:100%;margin-bottom:8px;min-height:0}
.public-site [data-rating][data-view=grid] .top-casino-actions{grid-column:1;grid-row:3;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-self:end;margin-top:auto}
.public-site [data-rating][data-view=grid] .top-review{min-height:42px}
@media(max-width:1100px) and (min-width:901px){.public-site .top-casino-row{grid-template-columns:82px minmax(0,1fr) 114px;gap:10px;padding-inline:12px}.public-site .top-casino-info h3{font-size:14px}.public-site .top-casino-info>small{display:none}.public-site [data-rating][data-view=grid] .top-casino-actions{grid-template-columns:minmax(0,1fr)}}
@media(max-width:680px){
 .public-site .orbit-bar{height:58px}.public-site .hero{margin-top:8px;margin-bottom:12px;padding:0 20px 20px}
 .public-site .page-columns{margin-top:14px}.public-site .home-paths{padding-block:7px}
 .public-site .home-paths a{font-size:10px;padding:7px 10px;min-height:34px}
 .public-site .page-content>.section{margin-top:var(--section-gap,36px)}
 .public-site .carousel-track.flow-ready{padding-top:12px;padding-bottom:20px;mask-image:linear-gradient(90deg,transparent,#000 9px,#000 calc(100% - 9px),transparent)}
 .public-site .flow-ready>.flow-slide+.flow-slide{margin-left:-24px}
 .public-site [data-carousel]>.section-heading{gap:10px}
 .public-site .flow-ready>.news-card{min-height:210px}.public-site .flow-ready>.promo-card{min-height:280px}
 .public-site .carousel-controls{gap:5px}.carousel-count{padding-right:2px}
 .public-site .carousel-track.flow-grid{grid-template-columns:minmax(0,1fr);mask-image:none;padding-top:12px}
 .public-site .top-casinos-section>.section-heading{gap:10px}
 .public-site .top-casino-row{grid-template-columns:76px minmax(0,1fr);gap:10px 12px;padding:17px 13px 12px;min-height:0}
 .public-site .top-brand{height:58px;padding:7px;border-radius:11px;grid-column:1;grid-row:1}
 .public-site .rating-popout .top-brand{margin-top:-25px}
 .public-site .top-brand .beer-logo-crop{width:70px}
 .public-site .top-casino-info{grid-column:2;grid-row:1}
 .public-site .top-casino-info h3{font-size:15px;padding-right:12px}
 .public-site .top-casino-info p{font-size:11px}
 .public-site .top-casino-info>small{font-size:8px;margin-top:4px}
 .public-site .top-casino-actions{grid-column:1/-1;grid-row:2;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:0}
 .public-site .top-code,.public-site .top-review{min-height:44px}
 .public-site .top-code:only-child,.public-site .top-review:only-child{grid-column:1/-1}
 .public-site .top-casino-info .casino-marks{gap:4px}
 .public-site .rating-popout .top-casino-info:has(.casino-marks){margin-top:0}
 .public-site .rating-popout .top-casino-info .casino-marks{max-width:100%;margin-bottom:7px;min-height:0}
 .public-site [data-rating][data-view=grid] .top-casino-list{gap:24px 10px}
 .public-site [data-rating][data-view=grid] .top-casino-row{padding-inline:12px;min-height:230px}
 .public-site [data-rating][data-view=grid] .top-brand{width:84px}
 .public-site [data-rating][data-view=grid] .top-casino-info h3{font-size:14px;padding:0}
 .public-site [data-rating][data-view=grid] .top-casino-info>small{display:none}
 .public-site [data-rating][data-view=grid] .top-casino-actions{grid-template-columns:minmax(0,1fr);gap:5px}
 .public-site [data-rating][data-view=grid] .top-code{padding-inline:8px;gap:5px}
 .public-site [data-rating][data-view=grid] .casino-stamp{font-size:17px;padding-inline:8px}
 .rating-view button{min-height:38px;padding:7px 8px}.rating-toolbar{margin-bottom:17px}
}
@media(max-width:370px){.rating-view button span{display:none}.public-site [data-rating][data-view=grid] .top-casino-list{grid-template-columns:minmax(0,1fr)}.public-site [data-rating][data-view=grid] .top-casino-row{min-height:0}.public-site [data-rating][data-view=grid] .top-casino-actions{grid-template-columns:1fr 1fr}.public-site .hero{padding-inline:18px}}
@media(prefers-reduced-motion:reduce){.public-site .top-brand{transform:none!important}}

.public-site .rating-intro{padding:10px 0 22px}.public-site .rating-intro .eyebrow{margin-bottom:17px}.public-site .rating-intro h1{font-size:clamp(30px,3.5vw,48px);text-transform:none;letter-spacing:-.05em}.public-site .rating-intro p{font-size:13px;margin-top:16px}.public-site .top-directory{margin-top:14px}
.public-site .top-casino-row{grid-template-columns:var(--rating-logo-size,100px) minmax(0,1fr) 132px;padding:calc(var(--rating-card-padding,16px) + 2px) var(--rating-card-padding,16px) calc(var(--rating-card-padding,16px) - 2px)}
.public-site [data-rating][data-view=grid] .top-casino-row{grid-template-columns:minmax(0,1fr);padding:calc(var(--rating-card-padding,16px) + 2px) var(--rating-card-padding,16px) calc(var(--rating-card-padding,16px) - 2px)}
.public-site [data-rating][data-view=grid] .top-brand{width:var(--rating-logo-size,100px)}
.public-site :is(.top-brand,.promo-brand) .beer-logo-crop .casino-brandmark{max-width:none;max-height:none}
@media(max-width:1100px) and (min-width:901px){.public-site .top-casino-row{grid-template-columns:min(var(--rating-logo-size,100px),82px) minmax(0,1fr) 114px}}
@media(max-width:680px){.public-site .top-casino-row{grid-template-columns:min(var(--rating-logo-size,100px),76px) minmax(0,1fr);padding:calc(min(var(--rating-card-padding,16px),20px) + 1px) min(var(--rating-card-padding,16px),20px) calc(min(var(--rating-card-padding,16px),20px) - 4px)}.public-site [data-rating][data-view=grid] .top-casino-row{grid-template-columns:minmax(0,1fr);padding-inline:min(var(--rating-card-padding,16px),20px)}.public-site [data-rating][data-view=grid] .top-brand{width:min(var(--rating-logo-size,100px),84px)}}

.public-site [data-rating][data-view=grid] .top-casino-row{grid-template-rows:auto 1fr auto;align-content:normal}

@media(min-width:681px){.public-site .rating-popout[data-view=grid] .top-casino-info .casino-marks:not(:has(.casino-mark:nth-child(3))){position:absolute;left:calc(var(--rating-logo-size,100px) + 32px);right:60px;top:-10px;max-width:none;margin:0}}

/* COMPACT · short actions and two selectable logo compositions. */
.public-site [data-rating]{container:rating / inline-size}
.public-site [data-rating][data-view=list] .top-casino-row{grid-template-columns:var(--rating-logo-size,100px) minmax(0,1fr) auto;gap:12px;min-height:94px;padding:calc(var(--rating-card-padding,12px) + 2px) var(--rating-card-padding,12px) calc(var(--rating-card-padding,12px) - 2px)}
.public-site [data-rating] .top-casino-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:7px;width:max-content;max-width:100%;margin:0}
.public-site [data-rating] .top-code{width:110px;max-width:100%;min-height:40px;padding:6px 9px;flex:0 1 auto;gap:8px}
.public-site [data-rating] .top-review{width:auto;min-width:76px;max-width:94px;min-height:40px;padding:8px 10px;justify-content:center;gap:9px;flex:0 0 auto;font-size:11px}
.public-site [data-rating] .top-review .icon{width:14px;height:14px}
.public-site [data-rating] .top-brand{height:60px}
.public-site [data-rating][data-view=list] .top-casino-info h3{font-size:15px;margin-bottom:4px}
.public-site [data-rating][data-view=list] .top-casino-info>small{margin-top:4px}
.public-site [data-rating][data-view=list] .top-casino-list{gap:20px}
.public-site [data-rating][data-logo-style=panel][data-view=list] .top-casino-row{grid-template-columns:calc(var(--rating-logo-size,100px) + 18px) minmax(0,1fr) auto}
.public-site [data-rating][data-logo-style=panel][data-view=list] .top-brand{position:absolute;left:0;top:0;bottom:0;grid-column:auto;grid-row:auto;margin:0;transform:none;width:calc(var(--rating-logo-size,100px) + 30px);height:auto;max-width:42%;border:0;border-right:1px solid #a9d6b425;border-radius:var(--card-radius,20px) 0 0 var(--card-radius,20px);background:radial-gradient(ellipse at 0 0,#3da96530,transparent 90%),#08120e40;box-shadow:inset -1px 0 0 #0003;padding:13px}
.public-site [data-rating][data-logo-style=panel] .top-brand .casino-brandmark{max-height:60px;max-width:100%}
.public-site [data-rating][data-logo-style=panel] .top-brand .beer-logo-crop{width:110px}
.public-site [data-rating][data-logo-style=panel] .beer-logo-crop .casino-brandmark{max-height:none;max-width:none}
.public-site [data-rating][data-view=grid] .top-casino-row{min-height:184px;gap:8px;padding:calc(var(--rating-card-padding,12px) + 2px) var(--rating-card-padding,12px) calc(var(--rating-card-padding,12px) - 2px)}
.public-site [data-rating][data-view=grid] .top-casino-actions{display:flex;justify-content:flex-start;align-self:end;grid-column:1;grid-row:3;width:max-content;gap:7px}
.public-site [data-rating][data-view=grid] .top-review{min-height:40px}
.public-site [data-rating][data-logo-style=panel][data-view=grid] .top-brand{position:relative;left:auto;top:auto;bottom:auto;width:calc(100% + var(--rating-card-padding,12px)*2);max-width:none;height:66px;margin:calc(-1 * (var(--rating-card-padding,12px) + 2px)) calc(-1 * var(--rating-card-padding,12px)) 2px;transform:none;border:0;border-bottom:1px solid #a9d6b425;border-radius:var(--card-radius,20px) var(--card-radius,20px) 0 0;background:radial-gradient(ellipse at 0 0,#3da96530,transparent 90%),#08120e40;box-shadow:none;padding:11px 18px}
.public-site [data-rating][data-logo-style=panel][data-view=grid] .top-brand .casino-brandmark{max-width:180px;max-height:44px}
.public-site [data-rating][data-logo-style=panel][data-view=grid] .beer-logo-crop .casino-brandmark{max-width:none;max-height:none}
@container rating (max-width:650px){
 .public-site [data-rating][data-view=list] .top-casino-row,.public-site [data-rating][data-logo-style=panel][data-view=list] .top-casino-row{grid-template-columns:min(var(--rating-logo-size,100px),90px) minmax(0,1fr);gap:8px 12px;min-height:106px}
 .public-site [data-rating][data-view=list] .top-casino-actions{grid-column:2;grid-row:2}
 .public-site [data-rating][data-logo-style=panel][data-view=list] .top-brand{width:calc(min(var(--rating-logo-size,100px),90px) + var(--rating-card-padding,12px));padding:10px}
 .public-site [data-rating][data-view=list] .top-casino-info{grid-column:2;grid-row:1}
 .public-site [data-rating][data-view=list] .top-casino-info p{-webkit-line-clamp:1}
 .public-site [data-rating][data-view=list] .top-brand{grid-column:1;grid-row:1/3}
 .public-site [data-rating][data-view=list] .top-casino-info h3{padding-right:24px}
 .public-site [data-rating][data-view=list] .top-casino-info:has(.casino-marks){margin-top:0}
}
@media(max-width:680px){
 .public-site [data-rating] .top-code{width:104px;min-height:42px;padding-inline:8px}
 .public-site [data-rating] .top-review{min-width:74px;min-height:42px;padding-inline:9px}
 .public-site [data-rating][data-view=grid] .top-casino-actions{width:100%;flex-wrap:wrap;gap:6px}
 .public-site [data-rating][data-view=grid] .top-code{width:100%;max-width:112px}
 .public-site [data-rating][data-view=grid] .top-review{min-width:74px;min-height:36px}
 .public-site [data-rating][data-view=grid] .top-casino-row{min-height:208px;gap:7px}
 .public-site [data-rating][data-logo-style=panel][data-view=grid] .top-brand{height:60px;padding:10px 14px}
 .public-site [data-rating][data-logo-style=panel][data-view=grid] .top-brand .casino-brandmark{max-width:100%;max-height:42px}
 .public-site [data-rating][data-logo-style=panel] .beer-logo-crop .casino-brandmark{max-width:none!important;max-height:none!important}
}
@media(max-width:370px){.public-site [data-rating][data-view=list] .top-casino-row,.public-site [data-rating][data-logo-style=panel][data-view=list] .top-casino-row{grid-template-columns:72px minmax(0,1fr);gap:8px 10px}.public-site [data-rating][data-logo-style=panel][data-view=list] .top-brand{width:calc(72px + var(--rating-card-padding,12px));padding:9px}.public-site [data-rating][data-view=list] .top-casino-actions{grid-column:2}.public-site [data-rating][data-view=list] .top-code{width:94px}.public-site [data-rating][data-view=list] .top-review{min-width:68px;gap:5px;padding-inline:7px}.public-site [data-rating][data-view=grid] .top-casino-actions{width:max-content}.public-site [data-rating][data-view=grid] .top-code{width:110px}.public-site [data-rating][data-view=grid] .top-casino-row{min-height:170px}}

.public-site [data-rating] .top-code{line-height:1.2}.public-site [data-rating] .top-code small{line-height:1.1}
.public-site [data-rating][data-logo-style=panel][data-view=list] .top-brand{align-self:stretch;justify-self:stretch}

.public-site [data-rating] .top-rank{grid-area:auto;align-self:auto;justify-self:auto}
