/* Lists phase 2: headings, top3 carousel, popup / popout / bottom sticky. Loaded after public.css; does not modify it. */
.co-list-heading{color:#071b36;font-size:clamp(1.4rem,3.2vw,2rem);line-height:1.2;margin:2rem 0 1rem;font-weight:800}

/* top3: stacked on desktop, horizontal scroll-snap carousel on mobile */
.co-list-top3 .co-cards,.co-list-single .co-cards{display:flex;flex-direction:column;gap:16px}
.co-pick{min-width:0}
@media(max-width:700px){
  .co-list-top3 .co-cards{flex-direction:row;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:12px;padding:0 0 12px;scrollbar-width:thin}
  .co-list-top3 .co-pick{flex:0 0 88%;scroll-snap-align:center}
  .co-list-top3 .co-pick .co-card{height:100%}
}

/* shared overlay parts */
.co-overlays[hidden]{display:none}
.co-age{margin:12px 0 0;font-size:12px;line-height:1.4;color:#50575e}
.co-close{position:absolute;top:8px;right:8px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:50%;background:#eff3fa;color:#071b36;font-size:28px;line-height:1;cursor:pointer;z-index:2}
.co-close:hover{background:#dce4ee}
.co-close:focus-visible,.co-ov a:focus-visible{outline:3px solid #154beb;outline-offset:2px}
.co-ov-panel{position:relative;background:#fff;color:#071b36;border-radius:16px;padding:20px 16px 14px;box-shadow:0 12px 40px #071b3640;box-sizing:border-box}
.co-ov-panel .co-list-heading{margin:0 48px 12px 0;font-size:clamp(1.2rem,3vw,1.6rem)}
.co-ov .co-public{margin:0}
.co-ov-cards .co-cards{display:flex;flex-direction:column;gap:12px}

/* popup: centred modal */
.co-ov-popup{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}
.co-ov-backdrop{position:absolute;inset:0;background:#071b36b3}
.co-ov-popup .co-ov-panel{position:relative;width:min(760px,100%);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow-y:auto}

/* popout: slides in at the bottom corner */
.co-ov-popout{position:fixed;right:16px;bottom:calc(16px + var(--co-sticky-h,0px));z-index:99990;width:min(420px,calc(100vw - 32px));animation:co-pop-in .35s ease-out}
.co-ov-popout .co-ov-panel{max-height:calc(100vh - 32px - var(--co-sticky-h,0px));overflow-y:auto}
@keyframes co-pop-in{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}

/* bottom sticky */
.co-ov-sticky{position:fixed;left:0;right:0;bottom:0;z-index:99995;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 16px;padding:10px 56px 10px 16px;box-sizing:border-box;box-shadow:0 -4px 20px #071b3633}
.co-ov-sticky .co-sticky-text{margin:0;font-size:17px;line-height:1.3;font-weight:700;text-align:center}
.co-ov-sticky .co-sticky-cta{font-size:16px;min-height:44px;padding:8px 18px;white-space:nowrap}
.co-ov-sticky .co-close{top:50%;transform:translateY(-50%);right:6px}
.co-ov-sticky .co-age{flex-basis:100%;margin:0;text-align:center;color:inherit;opacity:.8;font-size:11px}
.co-sticky-image{background:#fff;padding:0 0 0 0}
.co-sticky-imglink{display:block;line-height:0;max-width:970px}
.co-sticky-img{display:block;width:100%;height:auto;max-height:120px;object-fit:contain}
.co-sticky-image .co-age{position:absolute;left:8px;bottom:4px;flex:none;margin:0;padding:1px 6px;background:#071b36cc;color:#fff;border-radius:4px;opacity:1}
.co-sticky-image .co-close{background:#ffffffe6}
body.co-has-sticky{padding-bottom:var(--co-sticky-h,0px)}
body.co-modal-open{overflow:hidden}

@media(prefers-reduced-motion:reduce){.co-ov-popout{animation:none}}
@media(max-width:600px){
  .co-ov-popout{right:8px;left:8px;width:auto;bottom:calc(8px + var(--co-sticky-h,0px))}
  .co-ov-sticky .co-sticky-text{font-size:15px}
}

/* v0.18.82: overlay-korjaukset – ei sijanumeroa, badge ei sulje-painikkeen alla, sticky-painike */
.co-ov .co-rank{display:none!important}
.co-ov .co-card{padding-top:42px!important}
.co-ov .co-badge{right:56px!important;border-radius:0 0 10px 10px!important}
.co-ov .co-close{top:6px;right:6px;z-index:3}
.co-ov-sticky .co-sticky-cta{display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;background:#d93a2b;color:#fff!important;border-radius:10px;font-weight:800}
