html { scrollbar-gutter: stable; }
.wallpaper-detail-page { background: #07090e; }
.wallpaper-detail-page main { position: relative; isolation: isolate; }
.pdt-profile-hero { height: auto; min-height: 250px; background: #111620; }
.pdt-hero-media { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .58; }
.pdt-profile-hero .hero-shade, .download-profile-hero .hero-shade { background: linear-gradient(90deg, rgba(4, 6, 11, .96) 0%, rgba(4, 6, 11, .75) 48%, rgba(4, 6, 11, .32) 78%, rgba(4, 6, 11, .62)), linear-gradient(0deg, rgba(7, 9, 14, .86), transparent 58%); }
.pdt-profile-content { position: relative; min-height: 250px; padding-block: 18px 24px; display: flex; flex-direction: column; justify-content: flex-start; }
.pdt-profile-content .breadcrumbs { min-width: 0; margin: 0; flex-wrap: nowrap; }
.pdt-profile-content .breadcrumbs a, .pdt-profile-content .breadcrumbs > span:not([aria-current]) { flex: 0 0 auto; }
.pdt-profile-content .breadcrumbs span[aria-current="page"] { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pdt-hero-copy { min-width: 0; margin-top: auto; padding-top: 22px; }
.pdt-category-kicker span:first-child { color: #69ead4; }
.pdt-category-kicker span + span { display: inline-flex; align-items: center; gap: 9px; color: #aeb7c4; }
.pdt-category-kicker span + span::before { width: 18px; height: 1px; background: #56606e; content: ""; }
.pdt-profile-content h1 { max-width: 720px; margin: 0; font-size: clamp(34px, 3.6vw, 48px); line-height: 1; letter-spacing: -.045em; text-wrap: balance; }
.pdt-hero-description { max-width: 720px; margin: 10px 0 12px; color: #d4d9e1; font-size: 12px; line-height: 1.55; }
.pdt-profile-meta { font-size: 10px; }
.detail-media-panel { width: 100%; min-width: 0; height: 100%; overflow: hidden; }
.detail-media-panel[hidden] { display: none; }
.detail-media-panel video { display: block; width: 100%; height: 100%; background: #05070b; object-fit: contain; }
.detail-ambient { position: absolute; z-index: -1; inset: 0 0 auto; height: 760px; overflow: hidden; opacity: .26; pointer-events: none; }
.detail-ambient::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(5, 6, 10, .18), #07090e 84%), linear-gradient(90deg, rgba(7, 9, 14, .72), transparent 50%, rgba(7, 9, 14, .72)); }
.detail-ambient img { width: 100%; height: 100%; object-fit: cover; filter: blur(70px) saturate(1.15); transform: scale(1.16); }
.detail-shell { padding-block: 30px 86px; }
.detail-breadcrumbs { margin-bottom: 22px; color: #929baa; }
.detail-breadcrumbs span[aria-current="page"] { max-width: 42ch; overflow: hidden; color: #c9d0da; text-overflow: ellipsis; white-space: nowrap; }
.detail-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(330px, .7fr); gap: clamp(26px, 3.4vw, 58px); align-items: start; }
.detail-stage-column { min-width: 0; }
.detail-stage { position: relative; max-width: 100%; aspect-ratio: 16 / 9; overflow: hidden; border: 1px solid rgba(255, 255, 255, .16); border-radius: 18px; background: #0c1018; box-shadow: 0 32px 90px rgba(0, 0, 0, .5); }
.detail-stage.is-portrait { width: min(100%, 620px); aspect-ratio: 9 / 16; margin-inline: auto; }
.detail-preview { width: 100%; height: 100%; object-fit: cover; }
.detail-stage-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(3, 5, 10, .52), transparent 24%, transparent 66%, rgba(3, 5, 10, .64)); pointer-events: none; }
.detail-stage-topline { position: absolute; z-index: 2; inset: 16px 17px auto; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #e6eaf0; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-shadow: 0 1px 12px rgba(0, 0, 0, .7); }
.detail-live-label { display: inline-flex; align-items: center; gap: 8px; }
.detail-live-label i { width: 7px; height: 7px; border-radius: 50%; background: #2be0c2; box-shadow: 0 0 0 5px rgba(43, 224, 194, .16); }
.detail-stage.is-playing .detail-live-label i { animation: detail-pulse 1.6s ease-in-out infinite; }
@keyframes detail-pulse { 50% { box-shadow: 0 0 0 8px rgba(43, 224, 194, 0); } }
.detail-stage-controls { position: absolute; z-index: 3; right: 16px; bottom: 16px; left: 16px; display: flex; align-items: center; justify-content: center; gap: 8px; }
.detail-control { min-height: 46px; border: 1px solid rgba(255, 255, 255, .3); background: rgba(8, 11, 17, .78); color: #fff; box-shadow: 0 10px 26px rgba(0, 0, 0, .26); backdrop-filter: blur(14px); cursor: pointer; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.detail-control:hover { border-color: rgba(255, 255, 255, .7); background: rgba(18, 23, 32, .94); transform: translateY(-1px); }
.detail-play { padding: 0 18px; display: inline-flex; align-items: center; gap: 9px; border-radius: 8px; font-size: 12px; font-weight: 800; }
.detail-control svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.detail-play .icon-play { fill: currentColor; stroke: none; }
.detail-play .icon-pause { display: none; }
.detail-play[aria-pressed="true"] .icon-play { display: none; }
.detail-play[aria-pressed="true"] .icon-pause { display: block; }
.detail-preview-note { margin: 11px 2px 0; color: #727c8b; font-size: 11px; }
.detail-panel { position: sticky; top: 98px; min-width: 0; }
.detail-download-panel { padding: 22px; border: 1px solid #2d3440; border-radius: 14px; background: rgba(16, 20, 28, .94); box-shadow: 0 24px 60px rgba(0, 0, 0, .28); }
.download-intro { margin: -3px 0 16px; color: #929ba9; font-size: 12px; line-height: 1.6; }
.detail-quality-options { margin-bottom: 4px; }
.download-option.is-unavailable { opacity: .62; }
.detail-panel h1 { max-width: 15ch; margin: 4px 0 13px; font-size: clamp(34px, 3.3vw, 52px); line-height: .98; letter-spacing: -.05em; }
.detail-description { margin: 0; color: #a8b0bd; font-size: 14px; line-height: 1.72; }
.detail-stats { margin: 22px 0; padding-block: 14px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; border-block: 1px solid rgba(255, 255, 255, .11); }
.detail-stats span { color: #77818f; font-size: 9px; line-height: 1.3; text-transform: uppercase; }
.detail-stats strong { margin-bottom: 3px; display: block; color: #edf0f4; font-size: 13px; text-transform: none; }
.download-card { padding: 19px; border: 1px solid #2d3440; border-radius: 14px; background: rgba(16, 20, 28, .9); box-shadow: 0 24px 60px rgba(0, 0, 0, .28); }
.download-heading { margin-bottom: 13px; display: flex; align-items: center; justify-content: space-between; }
.download-heading h2 { margin: -1px 0 0; font-size: 20px; }
.download-heading > svg { width: 24px; height: 24px; fill: none; stroke: #2be0c2; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.download-options { margin-bottom: 12px; display: grid; gap: 7px; }
.download-option { min-height: 59px; padding: 10px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border: 1px solid #2c3340; border-radius: 8px; background: #111620; transition: border-color .18s ease, background .18s ease; }
.download-option:hover, .download-option:focus-visible { border-color: #687484; background: #171d28; }
.download-option.is-primary { border-color: rgba(43, 224, 194, .42); }
.download-option strong, .download-option small { display: block; }
.download-option strong { color: #f5f7fa; font-size: 13px; }
.download-option small { margin-top: 2px; color: #7f8998; font-size: 10px; }
.download-option > svg { width: 17px; fill: none; stroke: #95a0af; stroke-width: 1.8; }
.download-unavailable { margin: 0 0 14px; color: #9aa4b2; font-size: 12px; }
.detail-primary-action { width: 100%; min-height: 50px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; border: 0; border-radius: 8px; background: #2be0c2; color: #04130f; font-size: 13px; font-weight: 850; cursor: pointer; transition: background .18s ease, transform .18s ease; }
.detail-primary-action:hover { background: #68f0d8; transform: translateY(-1px); }
.detail-primary-action svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.detail-download-action { min-height: 56px; box-shadow: 0 14px 34px rgba(43, 224, 194, .14); }
.download-safety { margin: 10px 0 0; display: flex; align-items: center; justify-content: center; gap: 6px; color: #76818e; font-size: 9px; }
.download-safety svg { width: 14px; fill: none; stroke: #788493; stroke-width: 1.7; }
.detail-secondary-actions { margin-top: 9px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.detail-secondary-actions button, .detail-secondary-actions a { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 8px; border: 1px solid #2b323e; border-radius: 8px; background: #11151d; color: #bdc5d0; font-size: 11px; font-weight: 750; cursor: pointer; transition: color .18s ease, border-color .18s ease, background .18s ease; }
.detail-secondary-actions button:hover, .detail-secondary-actions a:hover { border-color: #515c6c; background: #171c25; color: #fff; }
.detail-secondary-actions svg { width: 16px; fill: none; stroke: currentColor; stroke-width: 1.7; }
.detail-action-status { min-height: 18px; margin: 6px 0 0; color: #7fe9d5; font-size: 10px; text-align: center; }
.detail-information { margin-top: 80px; padding-top: 55px; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: clamp(42px, 8vw, 130px); border-top: 1px solid #202631; }
.detail-information h2, .detail-steps h2 { margin: 3px 0 14px; font-size: clamp(27px, 3vw, 40px); line-height: 1.08; letter-spacing: -.035em; }
.detail-about > p:not(.pdt-category-kicker) { margin: 0; color: #9aa4b1; font-size: 15px; line-height: 1.8; }
.detail-tags { margin-top: 25px; display: flex; flex-wrap: wrap; gap: 8px; }
.detail-tags a { min-height: 38px; padding: 0 13px; display: inline-flex; align-items: center; border: 1px solid #2c3440; border-radius: 6px; background: #10141c; color: #adb6c3; font-size: 11px; font-weight: 700; transition: border-color .18s ease, color .18s ease; }
.detail-tags a:hover { border-color: #596676; color: #fff; }
.detail-specs h2 { margin: 3px 0 14px; font-size: 23px; }
.detail-specs dl { margin: 0; border-top: 1px solid #272e39; }
.detail-specs dl > div { min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-bottom: 1px solid #272e39; }
.detail-specs dt { color: #77818f; font-size: 11px; }
.detail-specs dd { margin: 0; color: #e3e7ed; font-size: 12px; font-weight: 750; text-align: right; }
.detail-steps { margin-top: 82px; padding: 45px; display: grid; grid-template-columns: .55fr 1.45fr; gap: 60px; border: 1px solid #242b36; border-radius: 16px; background: #0e1219; }
.detail-steps ol { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; list-style: none; }
.detail-steps li { position: relative; }
.detail-steps li + li::before { content: ""; position: absolute; top: 12px; right: calc(100% + 7px); width: 12px; height: 1px; background: #39424f; }
.detail-steps li > span { margin-bottom: 20px; display: block; color: #2be0c2; font-size: 10px; font-weight: 850; letter-spacing: .1em; }
.detail-steps strong { display: block; font-size: 14px; }
.detail-steps li p { margin: 7px 0 0; color: #818b99; font-size: 11px; line-height: 1.6; }
.detail-mobile-cta { display: none; }
.detail-not-found { margin-block: 100px; }
.detail-not-found .detail-primary-action { width: auto; margin-top: 20px; }

/* Download confirmation page */
.download-profile-hero { height: 250px; min-height: 250px; background: #111620; }
.download-profile-hero .pdt-hero-media { opacity: .32; filter: blur(4px); transform: scale(1.02); }
.download-profile-content { min-height: 250px; }
.download-profile-content h1 { max-width: none; }
.download-heading-quality, .download-heading-title { display: block; }
.download-heading-quality { white-space: nowrap; }
.download-heading-title { max-width: 60ch; margin-top: 5px; overflow: hidden; font-size: clamp(13px, 1.55vw, 20px); font-weight: 650; line-height: 1.25; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }
.download-page-shell { padding-block: 28px 86px; }
.download-confirmation-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(340px, .8fr); gap: 22px; align-items: start; }
.download-product-card, .download-confirmation-card { border: 1px solid #29313c; border-radius: 14px; background: #0f141c; }
.download-product-card { min-width: 0; overflow: hidden; }
.download-product-preview-module { background: #090c11; }
.download-product-card .detail-stage { border: 0; border-radius: 0; box-shadow: none; }
.download-product-card .detail-preview-note { margin: 0; padding: 10px 18px 0; }
.download-product-copy { padding: 24px; }
.download-product-copy h2, .download-confirmation-card h2 { margin: 3px 0 19px; font-size: clamp(23px, 2.3vw, 34px); line-height: 1.08; letter-spacing: -.035em; }
.download-product-copy dl { margin: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; overflow: hidden; border: 1px solid #29313c; border-radius: 8px; background: #29313c; }
.download-product-copy dl div { min-height: 68px; padding: 12px; background: #121822; }
.download-product-copy dt { color: #77818f; font-size: 9px; text-transform: uppercase; }
.download-product-copy dd { margin: 6px 0 0; color: #edf0f4; font-size: 12px; font-weight: 800; }
.download-confirmation-card { position: sticky; top: 94px; padding: 24px; }
.download-quality-picker { margin-bottom: 16px; display: grid; gap: 7px; }
.download-no-versions { margin: 0; padding: 14px; border: 1px solid #39414e; border-radius: 8px; background: #121822; color: #929ba8; font-size: 11px; line-height: 1.55; }
.download-quality-choice { width: 100%; min-height: 62px; padding: 10px 13px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid #2b3340; border-radius: 8px; background: #121822; color: #a5aebb; font: inherit; text-align: left; cursor: pointer; transition: border-color .18s ease, background .18s ease; }
.download-quality-choice:hover { border-color: #637083; background: #171e29; }
.download-quality-choice.is-selected { border-color: #2be0c2; background: rgba(43, 224, 194, .07); }
.download-quality-choice.is-unavailable:not(.is-selected) { opacity: .55; }
.download-quality-choice strong, .download-quality-choice small { display: block; }
.download-quality-choice strong { color: #f2f4f7; font-size: 13px; }
.download-quality-choice small { margin-top: 3px; color: #7f8996; font-size: 9px; }
.download-quality-choice > span:last-child { font-size: 10px; font-weight: 700; text-align: right; }
.download-final-form { margin: 4px 0 0; }
.download-final-action { margin: 0; }
.download-final-action:disabled { cursor: not-allowed; opacity: .5; transform: none; }
.download-turnstile { min-height: 65px; margin-bottom: 9px; overflow: visible; border: 0; border-radius: 0; background: transparent; }
.download-turnstile .cf-turnstile, .download-turnstile iframe { width: 100% !important; display: block; border: 0 !important; }
.download-verification-status { min-height: 18px; margin: 0 0 9px; color: #8d98a6; font-size: 10px; line-height: 1.5; text-align: center; }
.download-verification-status.is-error { color: #ff9e9e; }
.download-verification-status.is-success { color: #7fe9d5; }
.download-unavailable-message { padding: 15px; border: 1px solid #55452d; border-radius: 8px; background: rgba(144, 99, 29, .1); }
.download-unavailable-message strong { color: #f0d49f; font-size: 12px; }
.download-unavailable-message p { margin: 5px 0 0; color: #aa9a7d; font-size: 10px; }
.download-help { margin-top: 24px; padding: 28px; display: grid; grid-template-columns: minmax(210px, .65fr) minmax(0, 1.35fr) auto; align-items: center; gap: 30px; border: 1px solid #29313c; border-radius: 14px; background: #0d1219; }
.download-help h2 { margin: 3px 0 6px; font-size: 22px; }
.download-help p:not(.pdt-category-kicker) { margin: 0; color: #8e98a6; font-size: 11px; }
.download-use-steps { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; list-style: none; }
.download-use-steps li { min-width: 0; display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: start; }
.download-use-steps li > span { color: #2be0c2; font-size: 9px; font-weight: 850; letter-spacing: .08em; }
.download-use-steps strong { display: block; color: #eef2f5; font-size: 11px; line-height: 1.35; }
.download-use-steps li p { margin-top: 5px !important; line-height: 1.55; }
.download-help .hero-button { flex: 0 0 auto; border-color: #2be0c2; background: #2be0c2; color: #04130f; }
.download-help .hero-button:hover { border-color: #68f0d8; background: #68f0d8; color: #04130f; }

@media (max-width: 1100px) {
  .detail-layout { grid-template-columns: minmax(0, 1.35fr) minmax(310px, .75fr); gap: 28px; }
  .detail-panel h1 { font-size: 37px; }
  .detail-steps { grid-template-columns: 1fr; gap: 28px; }
  .download-help { grid-template-columns: 1fr; align-items: start; }
  .download-help .hero-button { width: max-content; }
}

@media (max-width: 820px) {
  .wallpaper-detail-page { padding-bottom: 72px; }
  .detail-shell { padding-top: 22px; }
  .detail-layout { grid-template-columns: minmax(0, 1fr); }
  .detail-panel { position: static; }
  .detail-download-panel { padding: 18px; }
  .detail-panel h1 { max-width: 18ch; font-size: clamp(34px, 7vw, 48px); }
  .detail-description { max-width: 68ch; }
  .download-card { max-width: none; }
  .detail-information { grid-template-columns: 1fr; gap: 50px; }
  .detail-mobile-cta { position: fixed; z-index: 90; right: 12px; bottom: max(10px, env(safe-area-inset-bottom)); left: 12px; min-height: 52px; padding: 0 18px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid rgba(255, 255, 255, .28); border-radius: 9px; background: #2be0c2; color: #04130f; box-shadow: 0 16px 45px rgba(0, 0, 0, .56); font-size: 13px; font-weight: 850; }
  .detail-mobile-cta svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
  .download-confirmation-layout { grid-template-columns: 1fr; }
  .download-confirmation-card { position: static; }
}

@media (max-width: 600px) {
  .pdt-profile-hero { height: auto; min-height: 230px; }
  .pdt-profile-content { min-height: 230px; padding-block: 14px 18px; }
  .pdt-profile-content .breadcrumbs span[aria-current="page"] { display: none; }
  .pdt-profile-content .breadcrumbs > span:nth-last-child(2) { display: none; }
  .pdt-hero-copy { padding-top: 18px; }
  .pdt-category-kicker span + span::before { width: 12px; }
  .pdt-profile-content h1 { max-width: 16ch; font-size: 32px; line-height: 1.03; }
  .pdt-hero-description { display: -webkit-box; overflow: hidden; font-size: 11px; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
  .pdt-profile-meta { gap: 11px; font-size: 8px; }
  .detail-shell { padding-block: 17px 58px; }
  .detail-breadcrumbs { margin-bottom: 15px; }
  .detail-breadcrumbs span[aria-current="page"] { display: none; }
  .detail-stage { border-radius: 12px; }
  .detail-stage-topline { inset: 10px 11px auto; font-size: 8px; }
  .detail-stage-controls { right: 10px; bottom: 10px; left: 10px; justify-content: flex-start; }
  .detail-play { min-height: 44px; padding-inline: 14px; }
  .detail-preview-note { font-size: 9px; }
  .detail-panel { padding-top: 10px; }
  .detail-panel h1 { margin-top: 3px; font-size: 34px; }
  .detail-description { font-size: 13px; }
  .detail-stats { margin-block: 18px; }
  .download-card { padding: 15px; border-radius: 11px; }
  .detail-information { margin-top: 56px; padding-top: 42px; }
  .detail-information h2, .detail-steps h2 { font-size: 27px; }
  .detail-about > p:not(.pdt-category-kicker) { font-size: 13px; }
  .detail-steps { margin-top: 56px; padding: 25px 20px; border-radius: 12px; }
  .detail-steps ol { grid-template-columns: 1fr; gap: 0; }
  .detail-steps li { padding: 16px 0 16px 48px; border-top: 1px solid #242b36; }
  .detail-steps li + li::before { display: none; }
  .detail-steps li > span { position: absolute; top: 17px; left: 0; margin: 0; }
  .download-profile-hero { height: 230px; min-height: 230px; }
  .download-profile-content { min-height: 230px; }
  .download-profile-content h1 { font-size: 32px; }
  .download-heading-title { font-size: 13px; }
  .download-page-shell { padding-block: 18px 60px; }
  .download-product-copy { padding: 18px; }
  .download-product-copy dl { grid-template-columns: repeat(2, 1fr); }
  .download-confirmation-card { padding: 18px; }
  .download-help { padding: 20px; }
  .download-use-steps { grid-template-columns: 1fr; gap: 0; }
  .download-use-steps li { padding-block: 13px; border-top: 1px solid #242b36; }
  .download-help .hero-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .detail-stage.is-playing .detail-live-label i { animation: none; }
}
