/* Dogeared Disciple Wallpaper Studio | v7.5 */
.ws-hero{background:radial-gradient(circle at 90% 16%,#c9a24d30,transparent 43%),linear-gradient(115deg,#081827,#143b52 60%,#461f30);color:#fff;padding:70px 0 58px}
.ws-hero .eyebrow{color:#f3d68c}.ws-hero h1{font:700 clamp(2.2rem,5vw,4.1rem)/1.1 Georgia,serif;max-width:900px;margin:8px 0 14px}.ws-intro{max-width:800px;color:#e4ebf2;font-size:1.08rem;line-height:1.64;margin-bottom:25px}
.ws-workspace-section{padding:36px 0 85px;background:#f4efe7;color:#183146}
.ws-how{display:flex;justify-content:center;gap:clamp(12px,3vw,45px);flex-wrap:wrap;margin:0 auto 32px;color:#4e5965;font-size:.89rem}.ws-how span{display:flex;gap:10px;align-items:center}.ws-how strong{width:26px;height:26px;display:grid;place-items:center;border:1px solid #ba9352;border-radius:50%;color:#714c24}
.ws-workspace{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.88fr);gap:26px;align-items:start;max-width:1190px;margin:auto}
.ws-controls{display:grid;gap:22px;min-width:0}.ws-panel{border:1px solid #ded3c2;background:#fff;border-radius:18px;padding:clamp(18px,2.3vw,27px);box-shadow:0 10px 27px #0d1d2b0a;min-width:0}.ws-panel h2{font:700 1.45rem Georgia,serif;margin:0 0 10px;color:#17354d}.ws-panel p{margin:0 0 17px;color:#536271;font-size:.9rem;line-height:1.6}
.ws-backgrounds{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.ws-background-choice{display:block;position:relative;appearance:none;border:3px solid transparent;border-radius:12px;background:#182a3d;padding:0;overflow:hidden;cursor:pointer;aspect-ratio:9/16;min-width:0}.ws-background-choice img{width:100%;height:100%;object-fit:cover;display:block}.ws-background-choice:hover{border-color:#a98647}.ws-background-choice[aria-pressed="true"]{border-color:#e2b45f;box-shadow:0 0 0 2px #143047}.ws-background-choice[aria-pressed="true"]::after{content:'✓';position:absolute;bottom:3px;right:4px;font-weight:800;background:#142d40;color:#fff;border-radius:50%;padding:0px 5px;font-size:.8rem}
.ws-label{display:block;font-weight:750;font-size:.9rem;color:#2b4355;margin:17px 0 7px}.ws-select,.ws-input,.ws-textarea{display:block;width:100%;font:inherit;font-size:1rem;line-height:1.5;padding:10px 12px;border:1px solid #b8c3ca;border-radius:9px;color:#203a4d;background:#fff;box-sizing:border-box}.ws-textarea{min-height:100px;resize:vertical}.ws-radio{padding:0;border:0;margin:20px 0 0}.ws-radio legend{margin:0 0 9px}.ws-radio label{display:inline-flex;gap:7px;align-items:center;margin:0 14px 8px 0;color:#34485a;font-size:.9rem;cursor:pointer}.ws-radio input,.ws-check input{accent-color:#a07535}.ws-hint{font-size:.79rem;color:#697582;display:block;margin:6px 0}.ws-control-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.ws-control-pair input[type=range]{width:100%;accent-color:#a27a3d}.ws-check{display:flex;gap:9px;align-items:center;margin:19px 0;color:#3a4f5d;font-weight:650;cursor:pointer}.ws-reset{margin-top:6px}
.ws-preview-column{position:sticky;top:18px;background:#112c40;border-radius:21px;padding:25px;box-shadow:0 20px 54px #0d1e2c38;color:#fff;min-width:0}.ws-preview-head{text-align:center}.ws-preview-head .eyebrow{color:#edcb86}.ws-preview-head h2{font:700 1.55rem Georgia,serif;color:#fff;margin:7px 0}.ws-preview-head p:last-child{color:#cfdae4;font-size:.86rem;margin:0 0 20px}.ws-preview-frame{position:relative;border-radius:15px;overflow:hidden;max-width:290px;margin:0 auto;border:5px solid #293e50;background:#07111a;aspect-ratio:9/16;box-shadow:0 12px 40px #0005}.ws-preview-frame canvas{width:100%;height:auto;display:block;aspect-ratio:9/16}.ws-loading{position:absolute;inset:0;display:grid;place-items:center;color:#fff;text-align:center;background:#07111a99;font-size:.89rem;padding:17px}.ws-loading[hidden]{display:none}.ws-status{min-height:1.4em;text-align:center;color:#f0dfb0;font-size:.84rem;margin:14px 0 0}.ws-actions{display:grid;gap:10px;margin:18px 0}.ws-actions .btn{width:100%;white-space:normal;text-align:center}.ws-actions button:disabled{opacity:.55;cursor:wait}.ws-save-note,.ws-privacy{font-size:.78rem;line-height:1.55;color:#d1dbe3;margin:12px 0}.ws-privacy{border-top:1px solid #ffffff30;padding-top:13px}.ws-preview-column .btn-outline{background:#fff;color:#213b4c}
.ws-workspace input:focus-visible,.ws-workspace button:focus-visible,.ws-workspace select:focus-visible,.ws-workspace textarea:focus-visible{outline:3px solid #d0a557;outline-offset:2px}
@media(max-width:1020px){.ws-backgrounds{grid-template-columns:repeat(4,minmax(0,1fr))}.ws-preview-frame{max-width:250px}.ws-preview-column{padding:18px}}
@media(max-width:770px){.ws-workspace{grid-template-columns:1fr}.ws-preview-column{position:static;order:-1;max-width:650px;width:100%;margin:auto}.ws-preview-frame{max-width:225px}.ws-backgrounds{grid-template-columns:repeat(6,minmax(0,1fr))}.ws-workspace-section{padding-top:20px}.ws-how{font-size:.78rem}.ws-preview-head p:last-child{margin-bottom:14px}}
@media(max-width:480px){.ws-hero{padding:45px 0 42px}.ws-backgrounds{grid-template-columns:repeat(4,minmax(0,1fr))}.ws-control-pair{grid-template-columns:1fr}.ws-panel{padding:18px}.ws-preview-frame{max-width:200px}.ws-how{gap:7px}.ws-how span{gap:4px}.ws-how strong{width:21px;height:21px}.ws-preview-column{padding:18px 13px}.ws-hero .button-row{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){.ws-background-choice{transition:none}}

.ws-view-preview-mobile{display:none}
@media(max-width:770px){.ws-view-preview-mobile{display:block;text-align:center;scroll-margin-top:20px}#ws-preview{scroll-margin-top:16px}}

/* v7.5.1: iPhone-first native Save Image flow and long-press fallback. */
.ws-iphone-note{font-size:.86rem;line-height:1.6;color:#f5e3bb;background:#193b52;border:1px solid #a88a55;border-radius:10px;padding:11px 13px;margin:10px 0 14px}
.ws-photo-fallback{background:#0a2032;border:1px solid #dfbd78;border-radius:12px;padding:14px;text-align:center;margin:12px 0}
.ws-photo-fallback p{font-size:.87rem;line-height:1.55;color:#fff0d1;margin:0 0 12px}
.ws-photo-fallback img{display:block;width:auto;max-width:100%;max-height:440px;object-fit:contain;margin:0 auto 14px;border-radius:7px;-webkit-touch-callout:default;user-select:auto;-webkit-user-select:auto}
.ws-photo-fallback .btn{width:100%}
.ws-iphone-note[hidden],.ws-photo-fallback[hidden],#ws-save-photos[hidden],#ws-share[hidden]{display:none!important}

/* v7.5.2: Always-visible, iPhone-friendly image-save flow. */
.ws-photo-fallback img{touch-action:manipulation;-webkit-touch-callout:default;user-select:auto;-webkit-user-select:auto;max-height:560px;border:1px solid #dcc592}
.ws-photo-fallback .ws-open-full-image{display:flex;align-items:center;justify-content:center;width:100%;margin:0 0 10px}
.ws-photo-fallback .btn+.btn{margin-top:10px}
.ws-iphone-note{display:block;font-size:.92rem}
#ws-save-photos{display:inline-flex;align-items:center;justify-content:center}
.ws-photo-fallback[hidden]{display:none!important}


/* v7.5.3: one clear saving path for phones; separate desktop download. */
.ws-mobile-save-guide{display:none;background:#f7ecd6;color:#233743;border:2px solid #cba356;border-radius:14px;padding:17px 18px;margin:16px 0 12px;box-shadow:0 6px 22px #0002}
.ws-mobile-save-guide h3{font-family:Georgia,serif;color:#233743;font-size:1.24rem;line-height:1.3;margin:0 0 14px}
.ws-mobile-save-guide ol{margin:0 0 10px;padding-left:1.5rem;display:grid;gap:11px;font-size:.99rem;line-height:1.52}
.ws-mobile-save-guide li::marker{font-weight:800;color:#6a3d0b}
.ws-mobile-save-guide strong{color:#132b3b}
.ws-mobile-save-guide p{color:#405363;font-size:.87rem;line-height:1.5;margin:12px 0 0}
.ws-photo-save-now{background:#f7e2b3;color:#1a2c38;border-radius:10px;padding:13px 14px;margin:0 0 14px;text-align:left;display:grid;gap:7px;font-size:1rem;line-height:1.5}
.ws-photo-save-now strong{color:#142e3d}
.ws-photo-save-heading{font-family:Georgia,serif;font-size:1.35rem;line-height:1.2}
.ws-photo-fallback{padding:13px}
.ws-photo-fallback img{width:100%;max-width:340px;max-height:none;object-fit:contain;border:3px solid #e9c67b;box-shadow:0 4px 22px #0006;margin:0 auto 15px}
.ws-extra-save-help{border-top:1px solid #ffffff55;padding:12px 0 3px;margin:8px 0 15px;text-align:left}
.ws-extra-save-help summary{color:#f2d49a;font-weight:700;cursor:pointer;padding:4px 0}
.ws-extra-save-help p{margin:12px 0;color:#f5e7c9}
.ws-close-photo{display:block;width:100%}
/* The first action is for small-screen phones; a normal download stays on desktop. */
@media(min-width:771px){
  .ws-actions #ws-save-photos{display:none!important}
  .ws-actions #ws-download{display:flex;justify-content:center;align-items:center}
  .ws-photo-fallback{display:none!important}
  .ws-save-note{display:block}
}
@media(max-width:770px){
  .ws-mobile-save-guide{display:block}
  .ws-actions #ws-save-photos{display:flex;align-items:center;justify-content:center;min-height:52px;font-weight:750;font-size:1.06rem}
  .ws-actions #ws-download{display:none!important}
  .ws-save-note{display:none}
  .ws-actions{margin:10px 0 18px}
  .ws-photo-fallback{scroll-margin-top:12px}
}
