
/* V24.8.0 — Square digital wallpaper delivery */
.wallpaper-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 26px 18px;max-height:34vh;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;}
.wallpaper-picker[hidden]{display:none!important;}
.wallpaper-pick{position:relative;min-width:0;padding:0;border:1px solid rgba(238,246,255,.11);background:rgba(12,14,22,.72);color:#eef6ff;text-align:left;cursor:pointer;display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px 10px;overflow:hidden;}
.wallpaper-pick:hover{border-color:rgba(201,151,255,.58);background:rgba(22,12,31,.84);}
.wallpaper-pick.is-selected{border-color:rgba(201,151,255,.9);box-shadow:inset 0 0 0 1px rgba(201,151,255,.22),0 0 0 1px rgba(201,151,255,.08);}
.wallpaper-pick img{width:100%;height:116px;object-fit:cover;display:block;grid-column:1/-1;filter:saturate(.92) contrast(1.04);}
.wallpaper-pick-copy{padding:9px 10px 10px;display:grid;gap:4px;}
.wallpaper-pick-copy small{font-size:5px;letter-spacing:.17em;color:rgba(238,246,255,.38);}
.wallpaper-pick-copy strong{font-size:9px;letter-spacing:.08em;line-height:1.1;}
.wallpaper-pick-copy em{font-style:normal;font-size:5px;letter-spacing:.15em;color:#c997ff;}
.wallpaper-pick-state{align-self:start;margin:9px 9px 0 0;min-width:22px;height:22px;border:1px solid rgba(238,246,255,.15);display:grid;place-items:center;color:rgba(238,246,255,.5);font-size:8px;}
.wallpaper-pick.is-selected .wallpaper-pick-state{border-color:rgba(201,151,255,.72);color:#fff;background:rgba(201,151,255,.13);}
.wallpaper-purchase-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:0 26px 18px;}
.wallpaper-purchase-help{margin-right:auto;color:rgba(238,246,255,.32);font-size:5px;letter-spacing:.15em;line-height:1.5;}
.wallpaper-checkout-status{min-height:14px;padding:0 26px 14px;color:#c997ff;font-size:6px;letter-spacing:.14em;}
.wallpaper-checkout-status.is-error{color:#ff9cae;}
.wallpaper-checkout-status.is-ok{color:#b7f6d4;}
.wallpaper-purchase-cta{border:1px solid rgba(201,151,255,.46);background:rgba(201,151,255,.09);color:#fff;padding:11px 14px;font:inherit;font-size:6px;letter-spacing:.18em;cursor:pointer;}
.wallpaper-purchase-cta:hover{border-color:rgba(201,151,255,.86);background:rgba(201,151,255,.15);}
.wallpaper-purchase-cta:disabled{opacity:.3;cursor:not-allowed;}
.wallpaper-download-modal{position:fixed;inset:0;width:100vw;height:100dvh;box-sizing:border-box;z-index:42;display:grid;place-items:center;padding:24px;background:rgba(2,4,9,.93);backdrop-filter:blur(16px);opacity:0;pointer-events:none;transition:opacity .2s ease;}
.wallpaper-download-modal.open{opacity:1;pointer-events:auto;}
.wallpaper-download-backdrop{position:absolute;inset:0;}
.wallpaper-download-card{position:relative;z-index:2;width:min(760px,94vw);max-height:min(82vh,760px);overflow:auto;background:#05070d;border:1px solid rgba(238,246,255,.14);box-shadow:0 42px 130px rgba(0,0,0,.74);}
.wallpaper-download-topline{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(238,246,255,.08);font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.38);position:sticky;top:0;background:#05070d;z-index:3;}
.wallpaper-download-topline button{border:0;background:none;color:rgba(238,246,255,.72);font:inherit;font-size:7px;letter-spacing:.2em;cursor:pointer;}
.wallpaper-download-copy{padding:24px 26px 16px;}
.wallpaper-download-copy small{font-size:6px;letter-spacing:.22em;color:rgba(238,246,255,.38);}
.wallpaper-download-copy h3{margin:8px 0 10px;font-size:clamp(28px,4vw,50px);line-height:.9;letter-spacing:-.045em;}
.wallpaper-download-copy p{margin:0;max-width:620px;color:rgba(238,246,255,.54);font-size:8px;line-height:1.55;letter-spacing:.07em;}
.wallpaper-download-status{margin:0 26px 14px;padding:11px 12px;border:1px solid rgba(238,246,255,.09);background:rgba(255,255,255,.02);color:rgba(238,246,255,.55);font-size:6px;letter-spacing:.14em;}
.wallpaper-download-list{display:grid;gap:8px;padding:0 26px 20px;}
.wallpaper-download-row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:13px 14px;border:1px solid rgba(238,246,255,.1);background:rgba(12,14,22,.72);}
.wallpaper-download-row small{display:block;font-size:5px;letter-spacing:.18em;color:rgba(238,246,255,.35);margin-bottom:5px;}
.wallpaper-download-row strong{font-size:9px;letter-spacing:.08em;}
.wallpaper-download-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(201,151,255,.44);padding:9px 12px;color:#fff;text-decoration:none;font-size:6px;letter-spacing:.16em;background:rgba(201,151,255,.08);}
.wallpaper-download-link:hover{border-color:rgba(201,151,255,.82);background:rgba(201,151,255,.15);}
.wallpaper-download-footer{padding:12px 26px 14px;border-top:1px solid rgba(238,246,255,.07);font-size:5px;letter-spacing:.17em;color:rgba(238,246,255,.24);}
.wallpaper-free-note{display:inline-block;color:#b7f6d4;font-size:5px;letter-spacing:.17em;margin-left:7px;}
.wallpaper-card-actions button[data-wallpaper-select-title]{color:#b7f6d4;}
@media (max-width:980px){.wallpaper-picker{grid-template-columns:repeat(2,minmax(0,1fr));max-height:38vh;}.wallpaper-purchase-actions{padding-left:20px;padding-right:20px}.wallpaper-checkout-status{padding-left:20px;padding-right:20px}.wallpaper-download-list{padding-left:20px;padding-right:20px}.wallpaper-download-copy{padding-left:20px;padding-right:20px}.wallpaper-download-footer{padding-left:20px;padding-right:20px}.wallpaper-download-card{width:96vw;}}
@media (max-width:620px){.wallpaper-picker{grid-template-columns:1fr;max-height:42vh}.wallpaper-pick img{height:150px}.wallpaper-purchase-actions{align-items:stretch;flex-direction:column}.wallpaper-purchase-help{margin:0}.wallpaper-purchase-cta{width:100%}.wallpaper-download-row{grid-template-columns:1fr}.wallpaper-download-link{width:100%}}
