/* Collection cards and expanded set details. */
.set-collection{max-width:1440px;margin:auto;padding:72px 5% 52px;overflow:hidden}
.set-carousel{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:8px;padding:32px 8px 20px;margin:0 -8px;overscroll-behavior-x:contain;scrollbar-width:none}
.set-carousel::-webkit-scrollbar{display:none}
.set-card{position:relative;flex:0 0 clamp(300px,36vw,470px);min-height:560px;border:0;border-radius:28px;overflow:hidden;padding:32px;color:#fff;background:#211a37;text-align:left;scroll-snap-align:start;isolation:isolate;transition:transform .3s ease}
.set-card:hover{transform:translateY(-5px)}
.set-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.set-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(8,8,18,.76),rgba(8,8,18,.15) 48%,rgba(8,8,18,.06) 65%,rgba(8,8,18,.7))}
.set-card-copy{display:flex;flex-direction:column;gap:16px;position:absolute;inset:32px 32px auto}
.set-meta{font-family:var(--font-mono,'DM Mono',monospace);font-size:12px;letter-spacing:.06em;line-height:1.6}
.set-card-copy strong{font:500 clamp(30px,3vw,42px)/1.08 'Satoshi',Arial,sans-serif;letter-spacing:-.025em}
.set-tagline{font-size:20px;line-height:1.3;font-weight:500}
.set-card-foot{position:absolute;bottom:24px;left:32px;right:24px;display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:500}
.set-plus,.set-close,.carousel-controls button{display:grid;place-items:center;border:0;border-radius:50%;width:44px;height:44px;background:#30312f;color:#fff;font-size:26px;line-height:1}
.set-plus{background:#f4f4ee;color:#171817}
.carousel-controls{display:flex;justify-content:flex-end;gap:12px;margin-top:6px}
.carousel-controls button:disabled{opacity:.28;cursor:default}
.set-dialog{width:min(1180px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);border:1px solid var(--line);border-radius:28px;background:var(--bg);overscroll-behavior:contain}
.set-dialog::backdrop{background:#000a;backdrop-filter:blur(12px)}
.set-dialog-toolbar{position:sticky;top:0;height:0;z-index:5;display:flex;justify-content:flex-end;padding-right:20px}
.set-close{position:relative;top:16px;flex-shrink:0;font-size:30px;box-shadow:0 0 0 1px #ffffff30}
.set-dialog .pack-section{padding:60px 48px 48px;border:0;margin:0;max-width:none}
.set-dialog .section-top{align-items:start;padding-right:34px}
.set-dialog .pack-layout{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr);gap:32px}
.set-dialog .pack-offer{min-width:0}
body:has(dialog[open]){overflow:hidden}
.set-dialog .thumb span{font-size:12px}
@media(max-width:760px){.set-collection{padding:48px 5% 32px}.set-card{flex-basis:84vw;min-height:500px;border-radius:24px}.set-carousel{gap:16px}.set-card-copy{inset:28px 24px auto}.set-card-foot{left:24px}.set-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:24px}.set-dialog .pack-section{padding:64px 22px 28px}.set-dialog .pack-layout{grid-template-columns:minmax(0,1fr)}.set-dialog .section-top{padding-right:0}.set-dialog .pack-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.set-dialog .button{white-space:normal}.set-dialog .set-dialog-toolbar{padding-right:14px}}
@media(prefers-reduced-motion:reduce){.set-card{transition:none}.set-card:hover{transform:none}}
.wallpaper-collection{border-top:1px solid var(--line)}
.wallpaper-set-card{background:#1b1d22;min-height:600px}
.wallpaper-set-card:nth-child(2){background:#26211f}
.wallpaper-set-card::after{display:none}
.wallpaper-set-card>img.wallpaper-device{position:absolute;inset:auto;left:50%;top:155px;transform:translateX(-50%) rotate(-7deg);width:166px;height:360px;object-fit:cover;border:6px solid #090a0d;border-radius:30px;box-shadow:0 20px 45px #0006;z-index:-1}
.wallpaper-set-card:nth-child(2)>img.wallpaper-device{transform:translateX(-50%) rotate(7deg)}
.free-sample-strip{max-width:1296px;margin:30px auto 64px;padding:36px 40px;border:1px solid var(--line);border-radius:24px;display:flex;justify-content:space-between;align-items:center;gap:28px}
.free-sample-strip h2{font-size:32px;margin:12px 0}.free-sample-strip p{color:var(--muted);line-height:1.6}
.wallpaper-detail{padding:72px 48px 48px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}
.wallpaper-main{display:block;width:210px;max-width:100%;height:auto;border:7px solid #050608;border-radius:36px;margin:0 auto 28px}
.wallpaper-thumbs{display:flex;overflow-x:auto;gap:10px;padding:6px;scrollbar-width:thin}
.wallpaper-thumb{padding:0;background:none;border:2px solid transparent;border-radius:10px;flex:0 0 52px;overflow:hidden}.wallpaper-thumb[aria-pressed=true]{border-color:var(--lime)}.wallpaper-thumb img{width:100%;height:auto;display:block}
.wallpaper-copy>p{line-height:1.7;margin:20px 0;color:var(--muted)}.wallpaper-copy>.button{display:flex}.wallpaper-copy>.text-button{margin:22px 0 0}.wallpaper-copy details{margin-top:26px;border-top:1px solid var(--line);padding-top:20px}.wallpaper-copy details p{line-height:1.7;margin-top:16px;color:var(--muted)}.wallpaper-copy summary{cursor:pointer}
#free-library-modal .collections{padding:64px 40px 40px;border:0}#free-library-modal .section-top{padding-right:20px}
@media(max-width:760px){.free-sample-strip{margin:12px 5% 40px;padding:26px;display:block}.free-sample-strip .button{margin-top:24px}.wallpaper-detail{padding:64px 22px 28px;grid-template-columns:minmax(0,1fr);gap:24px}.wallpaper-main{width:180px}.wallpaper-set-card{min-height:570px}#free-library-modal .collections{padding:64px 22px 28px}}

/* Planned collections are informational cards without purchase controls. */
.planned-set-card{background:#1c1b23;border:1px solid #393640;color:var(--ink)}
.planned-set-card::after{display:none}.planned-set-card:hover{transform:none}
.planned-set-card .set-meta{color:var(--muted)}
.planned-set-card .set-tagline{color:#a9a5b5}
.planned-set-symbol{position:absolute;inset:48% 32px 25%;display:flex;align-items:center;justify-content:center;gap:6px;border:1px dashed #514b61;border-radius:18px;color:#aaa0c4}
.planned-set-symbol .pixel-icon{width:32px;height:32px}
.planned-motion{background:#191e24;border-color:#323d48}
.planned-motion .planned-set-symbol{border-color:#455463;color:#9aadc0}
.planned-set-status{font:12px/1.5 var(--font-mono);border:1px solid #57525f;border-radius:30px;padding:8px 13px;color:#c3becd}

/* Shared dark frosted-glass surface for landing-page modals.
   Keep existing sizing, spacing, scrolling and responsive layouts intact. */
dialog.set-dialog,
dialog.starter-dialog,
dialog#product {
  border-radius: 24px;
  border: 1px solid rgba(237, 237, 237, 0.10);
  background: rgba(0, 0, 0, 0.55);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
}

/* Full-width landing purchase links should keep their labels centred. */
a.button[href*="checkout.html?product="] {
  justify-content: center;
  text-align: center;
}
