@font-face{font-family:Noto;src:url('/fonts/NotoSans.ttf')}@font-face{font-family:Lora;src:url('/fonts/Lora.ttf')}@font-face{font-family:Caveat;src:url('/fonts/Caveat.ttf')}*{box-sizing:border-box}body{margin:0;background:#ffffff;color:#363636;font:14px/1.6 Noto,Arial,sans-serif}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,canvas:focus-visible{outline:3px solid #111111;outline-offset:3px}a{color:inherit}button{border:1px solid #dddddd;background:white;border-radius:12px;min-height:44px;padding:9px 16px}button:hover:not(:disabled){border-color:#727272}button.selected{border-color:#111111;background:#f1f1f1;box-shadow:inset 0 0 0 1px #111111}[hidden]{display:none!important}.offer{text-align:center;background:#111111;color:#fff;padding:9px 12px;font-size:12px;letter-spacing:.02em}.offer strong{margin-left:10px}header{max-width:1320px;margin:auto;padding:19px 32px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #e5e5e5}header>span{color:#838383;font-size:12px}header>a:last-child{margin-left:auto;font-size:12px;text-decoration:none}.brand{text-decoration:none;font-size:30px;font-weight:800;letter-spacing:-2px}.brand span{color:#111111;font-size:14px;padding-left:3px}main{max-width:1256px;margin:auto;padding:30px 24px}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:#828282;margin:0 0 9px}h1{font:500 clamp(29px,3vw,43px)/1.18 Lora,serif;margin:0 0 12px;letter-spacing:-1.3px}.heading p:last-child{margin:0;color:#7a7a7a}.price-from{text-align:right;color:#797979}.price-from strong{font-size:25px;color:#111111}.price-from small{display:block}.workspace{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(365px,1fr);gap:30px;align-items:start}.preview{position:sticky;top:18px}.stage{border-radius:22px;overflow:hidden;position:relative;background:#e9e9e9}#viewer{height:500px;touch-action:none}#viewer canvas{width:100%;height:100%;display:block}.stage-tag{position:absolute;top:21px;left:23px;font-size:9px;font-weight:700;letter-spacing:.15em;pointer-events:none;color:#737373}.rotate-hint{position:absolute;bottom:19px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:11px;background:#fff9;padding:7px 14px;border-radius:30px;pointer-events:none}.home{position:absolute;bottom:18px;right:18px;border:0;background:#fff9;border-radius:50%;width:40px;padding:0;font-size:23px}.views{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.views button{padding:4px 4px 9px;overflow:hidden;border-radius:13px;font-size:10px;background:transparent}.views img{display:block;width:100%;height:72px;object-fit:cover;background:#e9e9e9;border-radius:8px;margin-bottom:5px}.preview-note{text-align:center;font-size:10px;color:#8a8a8a;margin:14px 0}.reassurance{display:flex;justify-content:space-around;border-top:1px solid #e2e2e2;padding:19px 0;font-size:10px;gap:10px}.editor{background:white;border:1px solid #e6e6e6;border-radius:22px;padding:23px;box-shadow:0 12px 45px #2f2f2f04}.steps{display:flex;background:#ffffff;padding:4px;border-radius:12px;margin-bottom:24px;gap:2px}.steps button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;border:0;padding:9px 5px;font-size:12px;background:transparent}.steps b{font-size:10px;border:1px solid #d3d3d3;border-radius:50%;width:21px;height:21px;line-height:19px}.steps small{font-size:8px;color:#8d8d8d}.steps [aria-current]{background:white;box-shadow:0 2px 8px #00000008}.steps [aria-current] b{background:#111111;color:white;border-color:#111111}h2{font:500 23px/1.3 Lora,serif;letter-spacing:-.5px;margin:0 0 7px}.panel>p{color:#8a8a8a;margin:0 0 19px;font-size:12px}.upload{border:1.5px dashed #c1c1c1;background:#ffffff;border-radius:15px;display:flex;align-items:center;flex-direction:column;padding:23px 12px;cursor:pointer;position:relative}.upload:hover{background:#f1f1f1}.upload strong{font-size:14px}.upload small{font-size:10px;color:#8f8f8f;margin-top:5px}.upload-icon{font-size:23px;background:#e9e9e9;color:#626262;width:43px;height:43px;border-radius:50%;text-align:center;line-height:40px;margin-bottom:9px}.upload input{position:absolute;opacity:0;width:100%;height:100%;inset:0;cursor:pointer}.small{font-size:10px!important;line-height:1.6;color:#868686;margin:9px 0!important}.center{text-align:center}.range-label{display:flex;align-items:center;justify-content:space-between}.link{border:0;background:transparent;font-size:11px;text-decoration:underline;padding:3px 5px;min-height:38px;color:#717171}input[type=range]{width:100%;accent-color:#111111;height:30px;cursor:pointer}label{display:block;font-size:11px;font-weight:600;margin:10px 0 5px}textarea{width:100%;resize:vertical;min-height:70px;border:1px solid #dbdbdb;border-radius:10px;padding:10px;color:#111111}input[type=number]{width:80px;padding:8px 12px;border:1px solid #dbdbdb;border-radius:10px}.font-options{display:flex;gap:6px;margin:12px 0}.font-options button{flex:1;padding:7px 3px;font-size:11px}.font-serif{font-family:Lora,serif}.font-script{font-family:Caveat,cursive;font-size:17px!important}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatches button{border-radius:50%;width:30px;height:30px;min-height:30px;padding:0;border:3px solid white;outline:1px solid #ddd}.swatches button.selected{outline:2px solid #111111}.custom-color{display:flex;align-items:center;gap:10px;color:#808080}input[type=color]{width:35px;height:32px;background:white;border:1px solid #ddd;border-radius:6px;padding:3px}.text-actions{display:flex;gap:5px;align-items:center}.secondary{background:#ffffff;font-size:11px;padding:8px 10px}.chips{display:flex;gap:6px;margin:7px 0}.chips button{font-size:10px;padding:5px 10px;min-height:32px}.band-wrap{margin-top:16px}.band-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px}.band-wrap canvas{display:block;width:100%;height:auto;touch-action:none;cursor:move;border:1px solid #e5e5e5;border-radius:7px;background:#f1f1f1}.band-captions{display:flex;font-size:9px;color:#8e8e8e;padding-top:5px}.band-captions span{width:50%;text-align:center}.primary{border:0;background:#111111;color:white;width:100%;padding:14px 18px;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between;border-radius:11px}.primary:hover:not(:disabled){background:#5e5e5e}.primary span{font-size:20px;line-height:16px}.action-row{margin-top:13px}.status{font-size:11px;color:#585858;min-height:0}.status:empty{display:none}.sizes{display:flex;gap:8px;margin:19px 0}.sizes button{flex:1;padding:12px 4px}.sizes strong,.sizes span,.sizes b{display:block;font-size:11px}.sizes span{font-size:10px;color:#8f8f8f;margin:4px 0}.deal{border-radius:11px;background:#f1f1f1;padding:13px 16px;margin-top:15px}.deal strong{font:600 19px Lora,serif}.deal p{font-size:11px;margin:5px 0 0;color:#7a7a7a}.downloads{display:flex;gap:15px;font-size:12px;margin:15px 0}.details{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding:75px 8px 45px}.details>div>p:last-child{font-size:13px;color:#858585;line-height:1.9}.details h2{font-size:30px;max-width:350px}.faq details{border-bottom:1px solid #e1e1e1;padding:15px 0}.faq summary{font-size:12px;cursor:pointer}.faq p{font-size:12px;color:#7e7e7e}footer{border-top:1px solid #e3e3e3;padding:24px;max-width:1256px;margin:auto;font-size:11px;color:#8e8e8e;display:flex;justify-content:space-between}#viewer-error{padding:30px;background:white;color:#545454}@media(min-width:1400px){#viewer{height:550px}}@media(max-width:800px){header{padding:12px 18px}header>span{display:none}main{padding:20px 14px}.heading{margin-bottom:18px}.heading p:last-child{font-size:11px;max-width:270px}.heading .price-from{display:none}h1{font-size:29px}.workspace{grid-template-columns:1fr;gap:18px}.preview{position:static}#viewer{height:310px}.stage{border-radius:17px}.stage-tag{top:15px;left:16px;font-size:8px}.views{gap:7px;margin-top:9px}.views img{height:57px}.views button{font-size:9px}.preview-note{margin:8px 0;font-size:9px}.reassurance{padding:10px 0 0;font-size:9px;border:0}.editor{padding:16px;border-radius:17px}.steps{margin-bottom:18px}.steps small{display:none}.panel h2{font-size:22px}.upload{padding:17px 10px}.offer{font-size:10px}.offer span{display:none}.action-row{position:sticky;bottom:0;background:white;padding:9px 0 5px;z-index:3}.primary{min-height:50px}.details{grid-template-columns:1fr;gap:15px;padding:40px 4px 20px}.details h2{font-size:26px}.details>div>p:last-child{font-size:12px}.stage .home{min-height:36px;width:36px}.band-heading{font-size:10px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
#quick-upload{position:absolute;bottom:15px;left:50%;transform:translateX(-50%);background:#111111;color:white;border-radius:12px;padding:13px 22px;white-space:nowrap;cursor:pointer;font-size:12px;box-shadow:0 3px 12px #0002}body:has(#quick-upload:not([hidden])) .rotate-hint{display:none}
@media(max-width:800px){.preview{position:sticky;top:0;z-index:4;background:#ffffff;padding-top:5px;padding-bottom:6px}#viewer{height:220px}.preview .reassurance,.preview .preview-note{display:none}.views img{height:38px}.views{margin-top:6px}.views button{padding-bottom:4px}.heading{margin-bottom:12px}.rotate-hint{bottom:10px}.stage .home{bottom:9px}}
.embedded header,.embedded .offer,.embedded footer{display:none}.embedded main{padding-top:24px}
.swatches button{width:42px;height:42px;min-height:42px;border-width:7px}.swatches{gap:5px}

.photo-layers{display:flex;gap:8px;overflow-x:auto;margin:12px 0}.photo-layers button{flex-shrink:0;display:flex;align-items:center;gap:7px;background:white;border:1px solid #d8d8d8;border-radius:10px;padding:6px 10px}.photo-layers button.selected{border:2px solid #111111}.photo-layers img{width:36px;height:36px;object-fit:contain}.photo-scale{display:flex;align-items:center;gap:10px}.photo-scale input{min-width:0;flex:1}.photo-scale button{min-width:44px;min-height:44px}.photo-more{margin-top:12px}.photo-more summary{cursor:pointer;font-size:13px;color:#5e5e5e}

.views{grid-template-columns:repeat(3,1fr)}.brand img{display:block;width:180px;height:auto}.offer{display:flex;align-items:center;justify-content:center;gap:14px;padding:12px}.offer strong{letter-spacing:.08em;margin:0}.offer-copy{font-size:11px;opacity:.8}.text-start{display:flex;gap:8px;flex-wrap:wrap}.text-start button{flex:1;white-space:nowrap}#cart-options{display:grid;gap:5px;margin-top:8px}#cart-options button{width:100%;line-height:1.4;min-height:42px}.embedded header,.embedded .offer{display:flex}@media(max-width:800px){.brand img{width:140px}.offer{font-size:11px;gap:8px}.offer>span:first-child{display:inline}.action-row:has(#cart-options:not([hidden])){position:static}.text-start button{white-space:normal}.embedded main{padding-top:16px}}

.offer{flex-wrap:wrap;padding:15px 18px;gap:4px 14px}.offer strong{font-size:19px;font-weight:800}.offer-copy{display:block;flex-basis:100%;font-size:12px;opacity:1;line-height:1.7}.offer-copy b{font-weight:700}.deal{border:2px solid #111;background:#fff}.deal strong{font-size:25px;font-weight:700}@media(max-width:800px){.offer span.offer-copy{display:block;font-size:11px}.offer strong{font-size:18px}.offer-copy b{display:block}}

#redraw-controls{border:1px solid #ddd;border-radius:12px;padding:14px;margin:12px 0}#redraw-controls h3{margin:0;font-size:16px}#redraw-controls input[type=checkbox]{accent-color:#111}#back-actions{display:grid;gap:8px;margin-top:12px}#back-actions button,.back-upload{width:100%;text-align:center;min-height:44px;line-height:1.5}.back-upload{cursor:pointer;border:1px solid #ddd;border-radius:12px;padding:12px;position:relative}.back-upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}#remove-background{margin-top:10px}button[aria-busy=true]{opacity:.65}#redraw-status{min-height:18px}

.ai-progress[hidden]{display:none}.ai-progress{position:fixed;inset:0;z-index:1000;background:rgba(255,255,255,.92);display:grid;place-items:center;padding:24px;backdrop-filter:blur(8px)}.ai-progress-card{width:min(100%,440px);text-align:center;padding:32px 20px;border:1px solid #ddd;border-radius:24px;background:white;box-shadow:0 20px 80px #0001}.ai-sparkle{font-size:48px}.ai-progress-card h2{font-size:28px}.ai-progress-card small{line-height:1.6;color:#555}.ai-progress-track{height:14px;border-radius:20px;background:#eee;overflow:hidden;margin:28px 0 16px}.ai-progress-track span{display:block;width:40%;height:100%;background:#111;border-radius:20px;animation:ai-loading 1.6s ease-in-out infinite}@keyframes ai-loading{from{transform:translateX(-100%)}to{transform:translateX(350%)}}@media(prefers-reduced-motion:reduce){.ai-progress-track span{animation:none;width:100%;opacity:.5}}

#calendar-controls{margin-bottom:24px}#calendar-controls label{display:block;font-size:14px;font-weight:600;margin:16px 0}#calendar-controls input,#calendar-controls select{display:block;width:100%;min-width:0;box-sizing:border-box;margin-top:7px;padding:13px;border:1px solid #ccc;border-radius:10px;font:inherit;background:white;color:#222}.calendar-names{display:grid;grid-template-columns:1fr 1fr;gap:12px}#calendar-status{min-height:36px}

.calendar-themes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.calendar-themes button{padding:6px;border:1px solid #ddd;border-radius:12px;background:white;font-size:12px;cursor:pointer}.calendar-themes button.selected{border:2px solid #222}.calendar-themes span{display:grid;place-items:center;height:66px;font-size:38px;border-radius:7px;margin-bottom:7px}.theme-romance{background:#f8e0e2;color:#ad4d67}.theme-night{background:#192633;color:#d6b373}.theme-botanical{background:#e8eddd;color:#617950}

.map-search{display:flex;gap:8px;align-items:center}.map-search input{flex:1;min-width:0!important}.map-search button{flex:none}#map-results{display:grid;gap:6px}#map-results button{text-align:left;white-space:normal;font-size:14px}#map-results button.selected{border:2px solid #222;background:#f4f0ea}

.theme-mono{background:#ededed;color:#222}.theme-blue{background:#dfedf6;color:#477ba2}.theme-rose{background:#fce1e8;color:#b65279}
