/* One shared form; only its active task is shown on phones. */
@media(max-width:767px){
 .mobile-guided #generation-overlay strong,.mobile-guided #generation-detail,.mobile-guided #generation-elapsed,.mobile-guided #generation-announcement,.mobile-guided #mobile-flow-status,.mobile-guided #backdrop-ideas-status{display:none}
 .mobile-guided .backdrop-idea-actions{display:grid;grid-template-columns:1fr}
 .mobile-guided .backdrop-idea-actions .button{min-height:52px;justify-content:center;text-align:center;font-size:16px}
 .mobile-guided #mobile-next{white-space:normal;overflow-wrap:anywhere;line-height:1.3}
 .mobile-guided #mobile-next:disabled{opacity:.7;cursor:wait}
 .mobile-guided #manual-backdrop{margin:16px 0}
}
.mobile-step-nav{display:flex;gap:4px;scroll-margin-top:84px}.mobile-step-nav button{flex:1;border:0;border-bottom:3px solid #ded0e5;background:transparent;color:#75627e;min-height:48px;padding:8px 2px;font-size:14px;font-weight:650}.mobile-step-nav button span{display:block;font-size:12px}.mobile-step-nav button[aria-current=step]{border-color:var(--purple);color:var(--purple)}.mobile-step-nav button.is-complete{border-color:#9d7baf}.mobile-step-title{font-family:var(--serif);font-size:28px;line-height:1.2;margin:22px 0 18px}.mobile-action-bar{position:fixed;bottom:0;left:0;right:0;z-index:25;background:#fcf9f3f5;box-shadow:0 -3px 22px #321d4214;padding:10px max(16px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-bottom));border-top:1px solid #dfd2e5}.mobile-action-bar>div{display:flex;align-items:center;gap:12px;max-width:720px;margin:auto}.mobile-action-bar .button{min-height:52px;flex:1;font-size:16px;padding:14px 16px}.mobile-back{min-width:58px;min-height:48px;border:0;background:transparent;color:var(--purple);font-size:16px}.mobile-action-bar p{font-size:13px;line-height:1.35;max-width:720px;margin:0 auto 8px;overflow-wrap:anywhere}.mobile-action-bar p:empty{display:none}.quote-product-summary{font-size:15px;line-height:1.5}
@media(max-width:767px){
 .mobile-guided{padding-bottom:140px}.mobile-guided .container{width:calc(100% - 32px)}
 .mobile-guided .studio{padding:24px 0 32px;min-height:62dvh}.mobile-guided .studio>.container>.section-heading{display:none}
 .mobile-guided .studio-grid{display:block}.mobile-guided .studio-left{display:contents}.mobile-guided .panel{width:100%;padding:20px;border-radius:16px}
 .mobile-guided .text-input,.mobile-guided select{font-size:16px;min-height:50px}.mobile-guided .field-label{font-size:16px}.mobile-guided .field-error{font-size:14px}
 .mobile-guided #upload-details>summary{display:none}.mobile-guided #upload-details{margin:0}.mobile-guided #upload-filled{min-height:120px;padding:16px;gap:16px}.mobile-guided #photo-thumbnail{width:88px;height:112px}.mobile-guided .upload-file-info strong{font-size:14px}.mobile-guided .upload-file-info span{font-size:13px}.mobile-guided .upload-file-info label{font-size:15px;min-height:44px;display:flex;align-items:center}
 .mobile-guided #upload-empty>span{font-size:13px}.mobile-guided #upload-empty label{font-size:16px;min-height:52px}.mobile-guided .form-divider{margin:18px 0}
 .mobile-guided .colour-field{margin:0 0 20px}.mobile-guided .colour-presets{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.mobile-guided .colour-preset{min-height:64px;padding:8px 4px}.mobile-guided .colour-dot{width:30px;height:30px}.mobile-guided .colour-name{font-size:13px}.mobile-guided .colour-custom{min-height:48px}
 .mobile-guided .backdrop-idea-cards{grid-template-columns:1fr}.mobile-guided .backdrop-idea{min-height:64px;padding:12px}.mobile-guided .backdrop-idea strong{font-size:16px}.mobile-guided .backdrop-idea span{font-size:14px;line-height:1.4}.mobile-guided .backdrop-idea-actions{gap:6px 18px}.mobile-guided .backdrop-idea-actions button{font-size:14px;min-height:44px}.mobile-guided .backdrop-location-note{font-size:13px}
 .mobile-guided .customiser>.demo-note,.mobile-guided .customiser>#form-status{display:none}.mobile-guided .preview-top .preview-heading{display:none}
 .mobile-guided .preview-panel{padding:16px}.mobile-guided .artwork-stage{min-height:0}.mobile-guided .print-preview{width:min(100%,360px)}.mobile-guided .print-preview img{height:auto;width:100%;max-height:62dvh;object-fit:contain}
 .mobile-guided .artwork-stage[aria-busy=true]>.print-preview{display:none}.mobile-guided #generation-overlay{position:relative;inset:auto;min-height:240px;padding:24px 8px;background:transparent}.mobile-guided #generation-overlay strong{font-size:20px}.mobile-guided #generation-detail{font-size:15px}.mobile-guided #generation-elapsed{font-size:14px}
 .mobile-guided .preview-caption{font-size:15px}.mobile-guided #alternate-design{min-height:48px;font-size:15px}.mobile-guided #alternate-design-help{font-size:13px}.mobile-guided .size-panel{position:static}.mobile-guided .size-room{height:210px}.mobile-guided .size-room-figure{margin-block:12px}.mobile-guided .size-options{gap:8px;flex-wrap:wrap}.mobile-guided .size-options label{flex:1 1 110px;min-width:0}.mobile-guided .size-options .size-card{min-height:76px;padding:10px}.mobile-guided .size-mini{display:none}.mobile-guided .size-label{font-size:14px}.mobile-guided .field-help{font-size:13px}.mobile-guided .size-unit-options label{min-height:44px;min-width:48px}.mobile-guided .paper-field{font-size:16px}
 .mobile-guided #payment-dialog{width:100%;height:100dvh;max-height:100dvh;max-width:none;margin:0;border:0;border-radius:0;padding:20px 20px max(24px,env(safe-area-inset-bottom));overflow-y:auto}.mobile-guided #payment-dialog input:not([type=checkbox]),.mobile-guided #payment-dialog select{font-size:16px;min-height:48px}.mobile-guided #payment-dialog button{min-height:48px}.mobile-guided #close-payment{min-width:48px}.mobile-guided #payment-dialog h2{font-size:27px}
 .mobile-keyboard .mobile-action-bar{position:relative;margin-top:16px}.mobile-keyboard{padding-bottom:0}
 .mobile-guided .gallery-section{content-visibility:auto;contain-intrinsic-size:auto 1500px}
}
@media(max-width:767px) and (max-height:500px){.mobile-action-bar{position:relative;margin-top:16px}.mobile-guided{padding-bottom:0}.mobile-guided .print-preview img{max-height:none;max-width:260px;margin:auto}.mobile-guided .size-room{height:170px}}
@media(prefers-reduced-motion:reduce){.mobile-guided *{scroll-behavior:auto!important}}
@media(max-width:767px){
 .hero-inner{min-height:0!important;display:flex;flex-direction:column;padding:24px 0 22px;gap:0}.hero-copy{padding:0;text-align:center;align-self:auto}.hero h1{font-size:clamp(34px,9vw,43px);line-height:1.1;margin:0 0 20px}.hero .button{width:100%;min-height:52px}.hero-art{width:min(320px,92%);height:225px;margin:24px auto 0}.nismo-print{height:210px;width:50%}.storm-print{height:200px;width:50%;top:15px;right:0}.hero-landscape{height:190px}.steps-inner{display:flex;justify-content:space-between;gap:8px;padding-block:16px}.step,.step:first-child,.step:last-child{padding:0;border:0;display:block;flex:1;text-align:center}.step>span{display:none}.step h2{font-size:13px;line-height:1.3;margin:0}.site-header .brand{font-size:clamp(17px,4.2vw,22px)}.header-inner{height:64px;gap:8px}.site-header nav{top:64px}.button:hover{transform:none}.hero-print{filter:drop-shadow(0 5px 7px #2a183526)}
 .mobile-guided .preview-panel:has(#generation-overlay:not([hidden])) .preview-top{display:none}
}
@media(max-width:767px){
 html:has(body.mobile-guided){scroll-padding-top:72px}
 .mobile-guided .studio{padding-top:12px}
 .mobile-guided #mobile-upload-step #upload-details>summary{display:none}
 .mobile-guided #drop-zone{min-height:0}
 .mobile-guided #mobile-upload-step .form-divider{display:none}
 .mobile-guided #mobile-upload-step .field-label{margin-top:18px}
 .mobile-guided .backdrop-idea span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 .mobile-guided .backdrop-idea[aria-pressed=true] span{-webkit-line-clamp:unset}
 .mobile-guided .steps-inner{display:flex!important;flex-direction:row!important;padding-block:16px}
}
.mobile-step-nav{scroll-margin-top:0}
@media(max-width:767px){.mobile-guided{padding-bottom:0}.mobile-guided .studio{padding-bottom:150px}}
@media(max-width:767px) and (max-height:500px){.mobile-guided .studio{padding-bottom:24px}}
.size-scale-details{display:contents}.size-scale-details>summary{display:none}
@media(max-width:767px){
 .mobile-step-nav button{display:flex;align-items:center;justify-content:center;gap:4px;min-height:48px;line-height:1.2}.mobile-step-nav button span{font-size:12px}
 .mobile-step-title{font-size:27px;margin:16px 0 14px}
 .mobile-guided .print-preview img{max-height:min(56dvh,calc(100dvh - 350px))}
 .mobile-guided .preview-panel:not(.is-example) .preview-top{display:none}
 .mobile-guided .size-panel{display:flex;flex-direction:column}
 .mobile-guided .print-options{display:contents}
 .mobile-print-summary{display:flex;align-items:center;gap:12px;order:-1;margin-bottom:16px}.mobile-print-summary img{width:42px;height:56px;object-fit:contain;border-radius:3px}.mobile-print-summary strong{font-size:16px;overflow-wrap:anywhere}
 .mobile-guided .size-unit-field{order:0;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.mobile-guided .size-unit-field legend{float:left;max-width:58%;font-size:16px;padding:0}.mobile-guided .size-unit-options{display:flex;gap:4px;flex-wrap:nowrap;flex-shrink:0}
 .mobile-guided .size-field{order:1}.mobile-guided .size-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-guided .size-options label{min-width:0}.mobile-guided .size-options .size-card{min-height:64px}.mobile-guided .size-fit{font-size:12px}
 .mobile-guided .size-scale-details{order:2;display:block;border-block:1px solid var(--line);margin:14px 0}.mobile-guided .size-scale-details>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:15px;font-weight:600;color:var(--purple)}.mobile-guided .size-room{height:180px}.mobile-guided .size-room-figure figcaption{font-size:12px}
 .mobile-guided .paper-field{order:3;margin:0;gap:6px}.mobile-guided .paper-field select{max-width:100%;font-size:15px}.mobile-guided .paper-field>.field-help{margin:0;font-size:13px}
 .mobile-guided .price{display:none}
}
@media(max-width:767px) and (max-height:500px){.mobile-guided .print-preview img{max-height:none}}

@media(max-width:767px){
 .mobile-guided #mobile-next[aria-busy=true]::before{content:'';display:inline-block;width:16px;height:16px;flex-shrink:0;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:backdrop-spin 1s linear infinite}
 @keyframes backdrop-spin{to{transform:rotate(360deg)}}
 @media(prefers-reduced-motion:reduce){.mobile-guided #mobile-next[aria-busy=true]::before{animation:none}}
}

/* Focus the active mobile journey while keeping navigation accessible. */
@media(max-width:767px){
 .mobile-creating .gallery-section,.mobile-creating .closing-cta,.mobile-creating .site-footer .brand,.mobile-creating .site-footer p{display:none}
 .mobile-creating .site-footer{padding:20px 0 calc(100px + env(safe-area-inset-bottom))}.mobile-creating .footer-inner{gap:0}
 .mobile-guided .size-scale-details{min-width:0;width:100%;align-self:center}
 .mobile-guided .size-room-figure{width:100%;min-width:0;margin:12px auto;text-align:center}
 .mobile-guided .size-room{width:100%;max-width:100%;min-height:0;height:230px;aspect-ratio:auto;margin-inline:auto}
}
.print-choice-details{display:contents}.print-choice-details>summary{display:none}
@media(max-width:767px){
 .mobile-guided .print-accordion{display:block;order:0;width:100%;min-width:0;margin:0;border:0;border-bottom:1px solid var(--line)}
 .mobile-guided .print-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:64px;padding:14px 0;font-size:16px;font-weight:650;line-height:1.4;color:var(--purple);cursor:pointer}
 .mobile-guided .print-accordion>summary::-webkit-details-marker{display:none}
 .mobile-guided .print-accordion>summary::after{content:'+';font-size:22px;font-weight:400;flex-shrink:0}
 .mobile-guided .print-accordion[open]>summary::after{content:'−'}
 .mobile-guided .print-accordion>summary small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:3px}
 .mobile-guided .print-accordion>summary:focus-visible{outline:2px solid var(--purple);outline-offset:3px;border-radius:4px}
 .mobile-guided .print-accordion .size-options{grid-template-columns:1fr;gap:8px;padding:0 0 12px;margin:0}
 .mobile-guided .print-accordion .size-card{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:12px;min-height:68px;padding:10px 38px 10px 12px;border-radius:12px;background:#fffdf9}
 .mobile-guided .print-accordion .size-mini{display:flex;width:32px;height:42px;align-items:center;justify-content:center}
 .mobile-guided .print-accordion .size-mini img{height:100%;max-width:100%;width:auto;object-fit:contain}
 .mobile-guided .print-accordion .size-label{text-align:left;font-size:15px;line-height:1.4}
 .mobile-guided .print-accordion .size-fit{min-height:0;font-size:11px;line-height:1.2;padding:4px 6px;background:#eee4f5;border-radius:6px}
 .mobile-guided .print-accordion .size-fit:empty{display:none}
 .mobile-guided .print-accordion input:checked+.size-card{padding:9px 37px 9px 11px;background:#f2e9f7;box-shadow:0 2px 7px #43245110}
 .mobile-guided .print-accordion input:checked+.size-card::before{top:50%;right:12px;transform:translateY(-50%);font-size:16px}
 .mobile-guided .print-accordion .paper-field{padding-bottom:18px}
 .mobile-guided .print-accordion .size-unit-field{margin-bottom:12px}
 .mobile-guided .print-details{display:none}
}
#examples-dialog{width:min(100% - 24px,520px);max-height:90dvh;border:0;border-radius:18px;padding:20px;background:var(--cream);color:var(--ink);overflow:auto}
#examples-dialog::backdrop{background:#23152bc9}
.examples-modal-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;position:sticky;top:-20px;background:var(--cream);padding:12px 0;z-index:1}
.examples-modal-toolbar h2{font-size:26px;margin:0}.examples-modal-toolbar button{min-width:44px;min-height:44px}
.examples-modal-gallery{display:grid;gap:24px}.examples-modal-gallery figure{margin:0}.examples-modal-gallery img{display:block;width:100%;height:auto;border-radius:8px}.examples-modal-gallery figcaption{font-size:15px;padding-top:10px;text-align:center}

/* Manual entry needs only its own label until suggestion cards are visible. */
#mobile-design-step:not(:has(#backdrop-ideas:not([hidden]) #backdrop-idea-cards button)) #backdrop-choice-heading{display:none}

/* Backdrop-first design: explicit choices, then one selected scene. */
.design-guidance{font-size:15px;color:var(--muted);line-height:1.5;margin:0 0 22px}.selected-backdrop{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid #d2bedc;border-radius:13px;background:#f1e9f5;margin-bottom:9px}.selected-backdrop-check{display:grid;place-items:center;width:24px;height:24px;flex-shrink:0;background:var(--purple);color:white;border-radius:50%;font-size:14px}.selected-backdrop small{display:block;color:var(--muted);font-size:12px}.selected-backdrop strong{display:block;font-size:16px;overflow-wrap:anywhere}.design-change{min-height:44px;margin:0 0 10px;text-decoration:underline;text-underline-offset:3px}.design-choice-icon{font-size:26px;flex-shrink:0;width:29px}.design-choice-arrow{margin-left:auto;font-size:25px;font-weight:400}.backdrop-idea-actions button{display:flex;align-items:center;gap:13px;text-align:left;line-height:1.3}.backdrop-idea-actions strong{display:block;font-size:16px}.backdrop-idea-actions small{display:block;font-size:12px;font-weight:400;margin-top:6px}.design-colour-options{display:contents}.design-colour-options>summary{display:none}.design-colour-current{margin-left:auto;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.design-colour-current i{width:18px;height:18px;display:block;background:var(--purple);border-radius:50%}.design-colour-optional{font-size:12px;font-weight:400;margin-left:7px;color:var(--muted)}
@media(max-width:767px){
 .mobile-guided #mobile-step-title{font-family:var(--serif);font-size:30px;margin:20px 0 8px}.mobile-guided #mobile-design-step #backdrop-choice-heading{display:none}.mobile-guided #mobile-design-step .design-guidance{font-size:14px;margin:0 0 24px}.mobile-guided #mobile-design-step .backdrop-idea-actions{display:flex;flex-direction:column;gap:12px}.mobile-guided #mobile-design-step .backdrop-idea-actions button{min-height:94px;border-radius:14px;padding:17px 15px;width:100%;margin:0;text-transform:none;letter-spacing:0}.mobile-guided #mobile-design-step .backdrop-idea-actions button>span:nth-child(2){flex:1}.mobile-guided #mobile-design-step .backdrop-idea-actions small{line-height:1.5;opacity:.86}.mobile-guided #mobile-design-step[data-photo-location=false] #enter-backdrop{background:var(--purple);color:white;border-color:var(--purple)}.mobile-guided #mobile-design-step .backdrop-location-note{font-size:12px;line-height:1.5;margin:12px 0 20px}.mobile-guided #mobile-design-step .backdrop-ideas-status:empty{display:none}.mobile-guided #manual-backdrop{margin:0 0 12px}.mobile-guided #manual-backdrop label{font-size:16px}.mobile-guided #manual-backdrop input{min-height:54px;border-radius:11px;font-size:16px}.mobile-guided .design-colour-options{display:block;margin-top:24px;border-block:1px solid var(--line)}.mobile-guided .design-colour-options>summary{list-style:none;display:flex;align-items:center;min-height:66px;font-size:14px;cursor:pointer}.mobile-guided .design-colour-options>summary::-webkit-details-marker{display:none}.mobile-guided .design-colour-options>summary:after{content:'⌄';font-size:16px;margin-left:12px}.mobile-guided .design-colour-options[open]>summary:after{content:'⌃'}.mobile-guided .design-colour-options .colour-field{border:0;padding:0 0 18px;margin:0}.mobile-guided .design-colour-options .colour-field legend{display:none}.mobile-guided #mobile-next:disabled{background:#e8e0eb;border-color:#e8e0eb;color:#8b7795;opacity:1;cursor:default}.mobile-guided #mobile-next[aria-busy=true]{background:var(--purple);border-color:var(--purple);color:white}.mobile-guided .selected-backdrop{padding:15px}.mobile-guided #mobile-design-step .backdrop-idea{border-radius:12px;padding:16px;min-height:76px}.mobile-guided #mobile-design-step .backdrop-idea strong{font-size:16px}.mobile-guided #mobile-design-step .backdrop-idea span{font-size:13px}
}
#mobile-design-step[data-backdrop-view=selected] #backdrop-choice-heading{display:none}

.mobile-design-pet{display:flex;align-items:center;gap:10px;margin:18px 0 0}.mobile-design-pet img{width:38px;height:38px;border-radius:50%;object-fit:cover}.mobile-design-pet strong{font-size:14px;display:block}.mobile-design-pet span{font-size:12px;color:var(--muted)}

/* Activity indicator: no fabricated percentage or completed stages. */
.backdrop-loading{text-align:center;padding:26px 18px 22px;border:1px solid #e1d2e9;border-radius:16px;background:linear-gradient(150deg,#f6f0fa,#eee3f4);margin-bottom:16px;color:var(--ink)}
.backdrop-loading-orbit{position:relative;width:64px;height:64px;margin:0 auto 18px;display:grid;place-items:center;border-radius:50%;background:#e6d7ee;color:var(--purple)}
.backdrop-loading-orbit:before{content:'';position:absolute;inset:-7px;border:1px solid #c9aed9;border-radius:50%;animation:backdrop-ripple 2.4s ease-out infinite}
.backdrop-loading-orbit span{font-size:36px;animation:backdrop-float 2.4s ease-in-out infinite}
.backdrop-loading strong{display:block;font-size:18px;line-height:1.4}.backdrop-loading p{font-size:14px;line-height:1.6;color:var(--muted);margin:9px auto 18px;max-width:28ch;min-height:45px}
.backdrop-loading-track{height:4px;max-width:170px;overflow:hidden;border-radius:4px;background:#dccbe6;margin:auto}.backdrop-loading-track i{display:block;height:100%;width:40%;border-radius:4px;background:var(--purple);animation:backdrop-sweep 1.8s ease-in-out infinite}
@keyframes backdrop-ripple{0%{transform:scale(.9);opacity:.8}100%{transform:scale(1.2);opacity:0}}@keyframes backdrop-float{50%{transform:translateY(-4px)}}@keyframes backdrop-sweep{0%{transform:translateX(-110%)}100%{transform:translateX(360%)}}
@media(prefers-reduced-motion:reduce){.backdrop-loading-orbit:before,.backdrop-loading-orbit span,.backdrop-loading-track i{animation:none}.backdrop-loading-track i{width:100%;opacity:.45}}

.subtitle-options{border-top:1px solid var(--line);margin-top:20px;padding-top:14px}.subtitle-options summary{cursor:pointer;min-height:44px;font-weight:600}.subtitle-options summary span,.subtitle-optional{font-size:12px;color:var(--muted);font-weight:400;margin-left:8px}.subtitle-options label{margin-top:12px}.subtitle-options p{font-size:12px;line-height:1.5;color:var(--muted)}
