/* The customer creation workspace. Private artwork is rendered by the server. */
@font-face{font-family:Inter;src:url('/assets/fonts/ai-design/Inter.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:'Libre Baskerville';src:url('/assets/fonts/ai-design/LibreBaskerville.ttf') format('truetype');font-weight:400 700;font-display:swap}
@font-face{font-family:'Dancing Script';src:url('/assets/fonts/ai-design/DancingScript.ttf') format('truetype');font-weight:400 700;font-display:swap}
body[data-page=ai-design]{background:#fcfbf9;color:#243638}
.ai-page{--create-ink:#243638;--create-muted:#637373;--create-plum:#493049;--create-line:#dce1dc;max-width:1320px;margin:0 auto;padding:48px 36px 80px;font-family:Inter,sans-serif}
.ai-page *{box-sizing:border-box}.ai-page [hidden]{display:none!important}.ai-page h1,.ai-page h2,.ai-page h3{color:var(--create-ink);text-shadow:none;margin:0;letter-spacing:-.04em;line-height:1.13}.ai-page h1,.ai-page h2{font-family:'Libre Baskerville',Georgia,serif}.ai-page h1{font-size:clamp(2.3rem,4vw,3.6rem);max-width:720px}.ai-page h1 em{font-weight:400;color:#697b70}.ai-page h2{font-size:clamp(1.5rem,2.3vw,2rem)}.ai-page h3{font-size:1.4rem}.ai-page p{margin:0}.ai-eyebrow{font-size:.66rem;font-weight:750;line-height:1.5;letter-spacing:.15em;text-transform:uppercase;color:#6b7670;margin:0 0 12px!important}.ai-intro{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:32px}.ai-intro-copy{font-size:.91rem;line-height:1.6;color:var(--create-muted);margin-top:16px!important}.ai-journey{list-style:none;padding:0;display:flex;align-items:start;gap:26px;margin:0 0 6px;flex-shrink:0}.ai-journey li{display:flex;gap:8px;align-items:center;font-size:.65rem;line-height:1.5;color:#7b827e;white-space:nowrap}.ai-journey li span{width:25px;height:25px;border:1px solid #d7ded6;border-radius:50%;display:grid;place-items:center;font-size:.62rem}.ai-journey [aria-current=step]{color:var(--create-plum);font-weight:700}.ai-journey [aria-current=step] span{background:var(--create-plum);border-color:var(--create-plum);color:#fff}
.ai-notice{padding:12px 16px;margin-bottom:20px;background:#eff3ef;border:1px solid #dbe4db;border-radius:10px;color:#476153;font-size:.77rem;line-height:1.5}.ai-notice.is-error{background:#fff3ed;color:#8a493b;border-color:#edc6b7}.ai-saved-shortcut{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid var(--create-line);padding:12px 0 18px;margin-bottom:20px;font-size:.77rem;color:var(--create-ink);text-decoration:none}.ai-saved-shortcut strong{margin-left:auto;color:var(--create-plum);font-size:.73rem}
.ai-workspace{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);gap:30px;align-items:start}.ai-panel{min-width:0;background:white;border:1px solid var(--create-line);border-radius:22px;box-shadow:0 12px 36px #29362f05;padding:30px}.ai-panel-heading{margin-bottom:24px}.ai-brief-panel{padding:28px}.ai-page fieldset{border:0;margin:0;padding:0;min-width:0}.ai-page label{display:block;font-size:.76rem;font-weight:650;line-height:1.5;margin:17px 0 8px;color:var(--create-ink)}.ai-page input:not([type=range]):not([type=color]):not([type=file]),.ai-page select,.ai-page textarea{font-family:inherit;font-size:.85rem;line-height:1.5;border:1px solid #ccd7cf;background:#fff;color:var(--create-ink);border-radius:9px;padding:12px 13px;width:100%;min-height:46px;box-shadow:none}.ai-page textarea{resize:vertical;min-height:94px}.ai-page select:not([multiple]){appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23576d63' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:35px}.ai-page select[multiple]{min-height:88px}.ai-page input::placeholder,.ai-page textarea::placeholder{color:#8b9690;font-weight:400}.ai-page :is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid #937c9c;outline-offset:3px}.ai-page button{font-family:inherit;cursor:pointer}.ai-page .button{font-family:inherit;font-size:.79rem;letter-spacing:0;min-height:48px;padding:13px 20px;border-radius:10px;line-height:1.4;white-space:normal;text-align:center}.ai-page .button-primary{background:var(--create-plum);color:#fff;box-shadow:0 6px 15px #4930491b;border:1px solid var(--create-plum)}.ai-page .button-secondary{background:white;border:1px solid #c9d3cc;color:var(--create-ink);box-shadow:none}.ai-page button:disabled{cursor:not-allowed;opacity:.48}.ai-primary{display:flex;justify-content:center;gap:18px;align-items:center;width:100%}.ai-primary span{font-size:1.15rem}.ai-page .button:not(:disabled):hover{transform:translateY(-1px)}.ai-page .button:active{transform:translateY(0)}.ai-field-help{font-size:.7rem;line-height:1.55;color:var(--create-muted);margin-top:7px!important}.ai-optional{font-weight:400;font-size:.7rem;color:#8a928e}
.ai-mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:20px}.ai-mode-switch button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:61px;border:1px solid #d8dfd8;border-radius:11px;background:#fcfcfa;color:#65716c;font-size:.73rem;font-weight:650;padding:11px 9px;line-height:1.4}.ai-mode-switch svg{height:23px;width:23px;flex-shrink:0;stroke:currentColor;stroke-width:1.3;fill:none}.ai-mode-switch button[aria-pressed=true]{background:#f5eff6;border-color:#ac94b0;color:var(--create-plum);box-shadow:inset 0 0 0 .5px #ac94b0}.ai-reference{margin:0 0 20px}.ai-upload-target{position:relative;display:flex!important;flex-direction:column;align-items:center;text-align:center;margin:0!important;border:1px dashed #aebfb1;border-radius:14px;background:#f7faf6;min-height:163px;padding:22px 15px;cursor:pointer;overflow:hidden}.ai-upload-target svg{width:27px;height:27px;fill:none;stroke:#52746b;stroke-width:1.5;margin-bottom:9px}.ai-upload-target strong{font-size:.87rem;color:#354f48}.ai-upload-target span{font-size:.69rem;font-weight:400;color:#677c70;margin-top:6px}.ai-upload-target small{font-size:.6rem;color:#8a968e;margin-top:12px;font-weight:400}.ai-upload-target input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.ai-upload-target:focus-within{outline:3px solid #937c9c;outline-offset:3px}.ai-photo-directions,.ai-inspiration{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.ai-photo-directions button,.ai-inspiration button{min-height:34px;border:1px solid #dfe4dd;background:#fff;color:#64736a;border-radius:18px;padding:7px 11px;font-size:.65rem;line-height:1.4}.ai-photo-directions button:hover,.ai-inspiration button:hover{border-color:#9db1a2;color:#354f48}.ai-reference-card{display:flex;align-items:center;gap:14px;padding:13px;border:1px solid #d8e3d8;border-radius:13px;background:#f7faf6}.ai-reference-card img{width:84px;height:84px;object-fit:contain;border-radius:8px;background:white}.ai-reference-card strong{font-size:.78rem}.ai-reference-card p{font-size:.65rem;color:#6f7e75;margin:6px 0!important;overflow-wrap:anywhere}.ai-text-button{border:0;background:none;color:var(--create-plum);font-size:.67rem;padding:8px 0;text-decoration:underline;text-underline-offset:3px}.ai-brief-product{border-top:1px solid var(--create-line);padding-top:2px}.ai-product-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px}.ai-product-options label,.ai-product-options select{grid-column:1/-1}.ai-brief-lettering,.ai-privacy{margin-top:20px;border-top:1px solid var(--create-line);padding-top:15px}.ai-page summary{cursor:pointer;font-size:.76rem;font-weight:650;line-height:1.5;color:var(--create-ink);min-height:28px}.ai-brief-lettering summary,.ai-precision summary,.ai-refinement summary{display:flex;gap:8px;align-items:center;list-style:none}.ai-page summary::-webkit-details-marker{display:none}.ai-brief-lettering summary>span:last-child,.ai-precision summary>span:last-child,.ai-refinement summary>span:last-child{margin-left:auto;font-size:1rem;font-weight:400}.ai-privacy{border:0;padding:0;margin-top:15px}.ai-privacy summary{font-size:.63rem;font-weight:500;color:#7d8880;text-align:center}.ai-privacy p{font-size:.65rem;line-height:1.6;color:#778179;padding-top:8px}.ai-bot-check{margin-top:18px;max-width:100%;overflow:hidden}.ai-create-status{font-size:.65rem;line-height:1.55;color:#7b827d;margin:12px 0!important}.ai-create-status.is-ready{color:#607768}.ai-reassurance{font-size:.64rem;line-height:1.55;color:#7b857d;text-align:center;margin-top:11px!important}.ai-help-link{display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:.68rem;color:#526c5d;margin-top:24px;line-height:1.5;text-decoration:none}.ai-help-link:hover{text-decoration:underline}
.ai-result-panel{background:#f1f2ed;border-color:#e5e6de;padding:30px;position:sticky;top:110px;overflow:hidden}.ai-result-panel .ai-panel-heading{margin-bottom:25px}.ai-result-panel h2{font-size:clamp(1.6rem,2.3vw,2.1rem);font-weight:400}.ai-example-collage{position:relative;border-radius:14px;overflow:hidden;background:#e3e7df}.ai-example-collage img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}.ai-example-label{position:absolute;bottom:10px;right:10px;background:#fffdf7ed;border-radius:5px;padding:5px 8px;font-size:.54rem;color:#667061}.ai-example-story{display:flex;gap:15px;align-items:center;margin-top:22px}.ai-example-story>img{width:112px;height:80px;object-fit:contain;border-radius:9px;box-shadow:0 5px 14px #24363812;border:4px solid white;transform:rotate(-4deg)}.ai-example-story>span{font-size:1.8rem;color:#879484;align-self:start;margin-top:8px}.ai-example-story p{font-family:'Libre Baskerville',Georgia,serif;font-size:1rem;margin-bottom:8px!important;line-height:1.35;color:#344c40}.ai-example-story div>span{font-size:.69rem;line-height:1.65;color:#778273;display:block}.ai-example-tags{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid #d7dfd2;margin-top:24px;padding-top:18px}.ai-example-tags span{font-size:.58rem;color:#6c7c6d;letter-spacing:.02em}.ai-example-tags span+span:before{content:'·';margin-right:7px}.ai-artwork-frame{position:relative;border-radius:15px;overflow:hidden;min-height:280px;background:#e8ece5;display:grid;place-items:center}.ai-artwork-frame img{display:block;width:100%;height:auto;max-height:590px;object-fit:contain}.ai-result-actions{padding-top:12px}.ai-preview-note{font-size:.65rem;line-height:1.6;color:#7a847a}.ai-result-actions .ai-primary{margin-top:0}.ai-refinement{border-top:1px solid #d5ddcf;margin-top:22px;padding-top:17px}.ai-refinement .button{margin-top:12px}.ai-generation-progress{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:460px}.ai-generation-progress p{color:#71806f;font-size:.78rem;line-height:1.7;max-width:290px;margin-top:17px!important}.ai-generation-progress .button{margin-top:20px}.ai-progress-art{height:120px;width:150px;position:relative;margin-bottom:35px}.ai-progress-art span{position:absolute;width:75px;height:85px;border-radius:18px;background:#d6dfcc;left:15px;top:15px;transform:rotate(-14deg);animation:ai-breathe 2.8s ease-in-out infinite}.ai-progress-art span:nth-child(2){left:40px;top:8px;background:#e8ddde;transform:rotate(8deg);animation-delay:.25s}.ai-progress-art span:nth-child(3){left:60px;top:25px;background:#bacbbf;transform:rotate(20deg);animation-delay:.5s}@keyframes ai-breathe{50%{translate:0 -8px;opacity:.75}}
.ai-review{margin-top:34px;padding:30px;scroll-margin-top:0}.ai-review-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;border-bottom:1px solid var(--create-line);padding-bottom:24px}.ai-review-heading>p{font-size:.75rem;color:#748177;line-height:1.5}.ai-review-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr);gap:32px;align-items:start}.ai-preview-column{min-width:0;position:sticky;top:110px}.ai-surface-tabs{display:flex;gap:6px;margin-bottom:13px;overflow-x:auto;padding-bottom:3px}.ai-surface-tabs button{border:1px solid transparent;background:#f2f4ef;color:#69776a;border-radius:20px;min-height:38px;white-space:nowrap;padding:9px 15px;font-size:.68rem}.ai-surface-tabs button[aria-pressed=true]{background:#314c40;color:#fff}.ai-layout-frame{border-radius:16px;background:#f1f3ed;overflow:hidden;min-height:380px;display:grid;place-items:center;position:relative;padding:22px}#ai-product-viewer{width:100%;min-height:440px}#ai-flat-editor{position:relative;width:100%;max-width:100%;max-height:620px;line-height:0;overflow:hidden;background:repeating-conic-gradient(#edf0ea 0% 25%,#fff 0% 50%) 50%/20px 20px}#ai-layout-image{display:block;width:100%;max-height:620px;object-fit:contain}#ai-draft-canvas{display:block;width:100%;height:100%}#ai-text-handle{position:absolute;border:1.5px solid #694771;background:#ffffff06;min-width:24px;min-height:24px;padding:0;touch-action:none;cursor:move;line-height:1;text-align:left;white-space:pre;z-index:2;box-shadow:0 0 0 1px #fff9;border-radius:2px}#ai-text-handle:after{content:'';position:absolute;right:-4px;bottom:-4px;width:7px;height:7px;background:#694771;border:1px solid #fff}#ai-text-handle span{pointer-events:none}#ai-text-handle.is-proof span{visibility:hidden}.ai-center-guide{position:absolute;top:0;bottom:0;left:50%;border-left:1px dashed #ad8ab4;pointer-events:none}.ai-print-details{margin-top:13px}.ai-print-details summary{font-size:.64rem;font-weight:500;color:#7d877c}.ai-quality{font-size:.72rem;line-height:1.6;color:#916343;margin-top:12px!important}.ai-tool-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.ai-edit-badge{font-size:.6rem;color:#8b6946;background:#faf0e3;border-radius:12px;padding:5px 8px}.ai-layout-controls>label:first-of-type{margin-top:4px}.ai-text-placement{display:flex;gap:8px;margin-top:12px}.ai-text-placement button{display:flex;gap:10px;align-items:center;flex:1;background:#fafbf8;border:1px solid #dce2d8;border-radius:10px;padding:10px;color:#6d796d;font-size:.7rem;min-height:65px}.ai-text-placement button[aria-pressed=true]{border-color:#a18aaa;background:#f6f0f7;color:#493049}.ai-text-placement svg{width:40px;height:32px;stroke:currentColor;fill:none;stroke-width:1;flex-shrink:0}.ai-text-placement text{stroke:none;fill:currentColor;font-family:Georgia,serif;font-size:12px;font-weight:700}.ai-font-field{margin-top:22px!important}.ai-font-field legend,.ai-tool-label{font-size:.7rem;font-weight:650;margin-bottom:9px;display:block;color:#485d4e}.ai-font-choices{display:flex;gap:6px}.ai-font-choices button{flex:1;min-width:0;padding:10px 4px;min-height:49px;border:1px solid #d6ded2;border-radius:8px;background:white;color:#465b49;font-size:1rem}.ai-font-choices button[aria-pressed=true]{background:#f0f5ec;border-color:#8d9f83;box-shadow:inset 0 0 0 .5px #8d9f83}[data-ai-font=Inter]{font-family:Inter,sans-serif!important}[data-ai-font='Libre Baskerville']{font-family:'Libre Baskerville',serif!important;font-size:.88rem!important}[data-ai-font='Dancing Script']{font-family:'Dancing Script',cursive!important;font-size:1.24rem!important}.ai-text-tools{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-top:19px}.ai-text-tools label{margin:0;font-size:.7rem}.ai-text-tools input[type=color]{display:block;border:1px solid #d2dace;border-radius:8px;padding:5px;width:62px;height:39px;background:#fff;margin-top:8px;cursor:pointer}.ai-align{display:flex;border:1px solid #d6ded2;border-radius:8px;overflow:hidden}.ai-align button{background:white;border:0;min-width:42px;height:38px;font-size:1.1rem;color:#4d6151}.ai-align button+button{border-left:1px solid #e3e8e0}.ai-align button:hover{background:#f0f5ec}.ai-page input[type=range]{display:block;width:100%;min-width:0;accent-color:#68486f;margin:12px 0 5px}.ai-page output{font-size:.6rem;color:#829080;font-weight:400}.ai-control-pair{display:grid;grid-template-columns:1fr 1fr;gap:11px}.ai-control-pair label{font-size:.65rem}.ai-precision{margin:18px 0;border-block:1px solid #e2e7dd;padding:16px 0}.ai-precision summary{font-size:.71rem}.ai-layout-controls>#ai-update-layout{width:100%}.ai-layout-controls #ai-layout-status{min-height:20px}.ai-approval{border-top:1px solid #dce3d7;margin-top:23px;padding-top:15px}.ai-price-quantity{display:flex;justify-content:space-between;align-items:center;gap:15px}.ai-price-quantity label{width:83px;margin:0;font-size:.6rem}.ai-price-quantity input{min-height:40px!important;padding:8px 10px!important}#ai-layout-price{font-size:1rem;font-weight:700;color:#344b3c;line-height:1.5;max-width:65%}.ai-approval>p{font-size:.61rem;line-height:1.5;color:#7d8679;margin:15px 0!important}.ai-cart-success{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#edf4e9;border:1px solid #cbdcc3;border-radius:15px;margin-top:26px;padding:20px}.ai-cart-success>div{flex:1;min-width:200px}.ai-cart-success strong{font-family:'Libre Baskerville',Georgia,serif;font-size:1.1rem;color:#3b5542}.ai-cart-success p{font-size:.7rem;color:#6c7c68;line-height:1.5;margin-top:9px!important}
.ai-designs-section{margin-top:54px}.ai-tray-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.ai-tray-heading>p{font-size:.72rem;color:#7c8978;line-height:1.5}.ai-design-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ai-design-card{border:1px solid #d9e0d4;border-radius:13px;background:white;padding:9px;min-width:0;overflow:hidden}.ai-design-card.is-selected{border-color:#9c85a2;box-shadow:0 0 0 1px #9c85a2}.ai-design-card img{display:block;width:100%;aspect-ratio:1.25;object-fit:contain;background:#f2f4ee;border-radius:7px}.ai-design-card strong{display:block;font-size:.68rem;line-height:1.5;color:#546a56;padding:12px 4px;overflow-wrap:anywhere}.ai-design-card button{font-size:.67rem;color:#493049;min-height:40px;width:100%;border:0;border-top:1px solid #e3e8dd;background:white}.ai-tray-empty{grid-column:1/-1;padding:28px!important;border:1px dashed #d7dfd1;border-radius:13px;text-align:center;font-size:.75rem;color:#8a9484;background:#fafbf7}.ai-session-note,.ai-session-details{font-size:.63rem;line-height:1.6;color:#8b9486;margin-top:13px!important}.ai-session-details summary{font-size:.63rem;font-weight:400;color:#71816b}.ai-session-details p{max-width:750px;padding-top:8px}
@media(prefers-reduced-motion:no-preference){.ai-page button,.ai-upload-target{transition:background .2s,border-color .2s,transform .2s,box-shadow .2s}.ai-result-panel,.ai-review{animation:ai-enter .45s ease both}.ai-example-story>img{transition:transform .35s}.ai-example-story:hover>img{transform:rotate(0)}@keyframes ai-enter{from{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}}
@media(max-width:1100px){.ai-page{padding:34px 24px 60px}.ai-intro{align-items:start;flex-direction:column;gap:23px}.ai-workspace{gap:21px;grid-template-columns:minmax(300px,.95fr) minmax(0,1fr)}.ai-result-panel,.ai-panel{padding:23px}.ai-journey{gap:25px}.ai-review-grid{gap:23px;grid-template-columns:minmax(0,1.1fr) minmax(260px,.8fr)}.ai-example-story{gap:10px}.ai-example-story>img{width:85px;height:62px}.ai-example-story>span{display:none}.ai-example-story p{font-size:.86rem}.ai-example-story div>span{font-size:.62rem}.ai-font-choices button{font-size:.8rem}.ai-text-placement button{gap:6px;padding:9px 7px;font-size:.64rem}.ai-text-placement svg{width:32px}}
@media(max-width:760px){.ai-page{padding:30px 17px 50px}.ai-intro{gap:23px;margin-bottom:25px}.ai-page h1{font-size:clamp(2rem,8vw,3rem);max-width:440px;line-height:1.2}.ai-intro-copy{font-size:.78rem;margin-top:13px!important}.ai-journey{gap:19px;width:100%;justify-content:space-between}.ai-journey li{font-size:.6rem;gap:6px}.ai-journey li span{width:22px;height:22px;font-size:.56rem}.ai-notice{font-size:.7rem;padding:11px 13px;margin-bottom:17px}.ai-workspace{grid-template-columns:1fr;gap:20px}.ai-panel{border-radius:17px;padding:21px}.ai-brief-panel{padding:21px}.ai-result-panel{position:static}.ai-panel-heading{margin-bottom:21px}.ai-page h2{font-size:1.6rem}.ai-mode-switch button{min-height:57px;font-size:.69rem}.ai-upload-target{min-height:149px;padding:20px 12px}.ai-photo-directions button,.ai-inspiration button{min-height:40px;font-size:.64rem;padding:8px 10px}.ai-example-story>img{width:104px;height:73px}.ai-example-story{gap:16px}.ai-example-story p{font-size:.92rem}.ai-example-story div>span{font-size:.66rem}.ai-reference-card img{width:73px;height:73px}.ai-review{margin-top:25px;scroll-margin-top:0}.ai-review-heading{align-items:start;flex-direction:column;gap:12px}.ai-review-grid{grid-template-columns:1fr;gap:24px}.ai-preview-column{position:static}.ai-layout-frame{min-height:270px;padding:13px}#ai-product-viewer{min-height:340px}.ai-layout-controls{border-top:1px solid var(--create-line);padding-top:23px}.ai-text-placement button{font-size:.75rem;min-height:67px;justify-content:center}.ai-text-placement svg{width:42px}.ai-font-choices button{font-size:.9rem}.ai-cart-success{padding:18px}.ai-cart-success .button{width:100%}.ai-tray-heading{align-items:start;flex-direction:column;gap:12px}.ai-design-tray{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-designs-section{margin-top:35px}.ai-privacy summary{min-height:35px}.ai-generation-progress{min-height:310px}}
@media(max-width:355px){.ai-page{padding-inline:12px}.ai-panel{padding:16px}.ai-mode-switch button{flex-direction:column;gap:5px;font-size:.66rem}.ai-journey{gap:8px}.ai-journey li{font-size:.54rem;gap:4px}.ai-journey li span{width:19px;height:19px}.ai-saved-shortcut{gap:9px;font-size:.68rem}.ai-saved-shortcut strong{font-size:.62rem}.ai-example-story>img{width:85px;height:64px}.ai-example-story p{font-size:.8rem}.ai-photo-directions{gap:5px}.ai-photo-directions button{font-size:.6rem;padding-inline:9px}}
@media(prefers-reduced-motion:reduce){.ai-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Flat editing uses the trim rectangle from the server, preserving proportions. */
#ai-flat-editor{max-height:none}#ai-layout-image{position:absolute;max-height:none;max-width:none;object-fit:fill}#ai-draft-canvas{position:absolute;inset:0}

/* Short mode labels stay readable at enlarged browser text sizes. */
.ai-intro>*{min-width:0}.ai-journey{flex-wrap:wrap}.ai-journey li{white-space:normal;min-width:0}.ai-journey li span{flex-shrink:0}.ai-reference-card>div,.ai-example-story>div{min-width:0}.ai-reference-card img,.ai-example-story>img{flex-shrink:0}
.ai-lettering-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.ai-lettering-modes button{display:flex;flex-direction:column;align-items:start;gap:5px;text-align:left;border:1px solid #d8dfd8;background:#fff;border-radius:9px;padding:12px;color:#556b5d;line-height:1.5}.ai-lettering-modes strong{font-size:.68rem;font-weight:650}.ai-lettering-modes span{font-size:.62rem;color:#738174}.ai-lettering-modes button[aria-pressed=true]{border-color:#a18aaa;background:#f6f0f7;color:#493049}
.ai-layout-frame:has(#ai-product-viewer[hidden]){min-height:0;padding-block:26px}

.ai-font-choices button{overflow-wrap:anywhere;line-height:1.3}.ai-font-choices [data-ai-font="Libre Baskerville"]{font-size:.72rem!important}.ai-font-choices [data-ai-font="Dancing Script"]{font-size:1.05rem!important}

#ai-text-handle span{visibility:hidden}

.ai-align svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;margin:auto}

@media(max-width:760px){.ai-page input:not([type=range]):not([type=color]):not([type=file]),.ai-page select,.ai-page textarea{font-size:1rem}}

/* Phone workspace: concise hierarchy, artwork first, comfortable touch controls. */
#ai-layout-status:empty,.ai-quality:empty{display:none}
.ai-price-quantity{margin-bottom:16px}
.ai-print-details summary,.ai-session-details summary,.ai-privacy summary{display:flex;align-items:center;gap:8px}
.ai-print-details summary::after,.ai-session-details summary::after,.ai-privacy summary::after{content:"＋";font-size:.9rem;font-weight:400}
.ai-print-details[open] summary::after,.ai-session-details[open] summary::after,.ai-privacy[open] summary::after{content:"−"}
.ai-privacy summary{justify-content:center}
@media(max-width:760px){
  .ai-page{padding:24px 14px 44px}
  .ai-intro{gap:19px;margin-bottom:22px}
  .ai-page h1{font-size:clamp(1.9rem,7.8vw,2.65rem);max-width:430px;line-height:1.16}
  .ai-intro-copy{font-size:.76rem;margin-top:11px!important}
  .ai-journey{gap:9px;margin:0}
  .ai-journey li{font-size:.58rem;gap:5px}
  .ai-panel,.ai-brief-panel,.ai-result-panel{padding:19px;border-radius:18px}
  .ai-panel-heading{margin-bottom:18px}
  .ai-mode-switch{gap:8px;margin-bottom:17px}
  .ai-mode-switch button{min-height:57px;padding:10px 7px;font-size:.68rem}
  .ai-mode-switch svg{height:21px;width:21px}
  .ai-upload-target{min-height:124px;padding:17px 13px}
  .ai-upload-target small{margin-top:9px}
  .ai-photo-directions button,.ai-inspiration button{min-height:44px}
  .ai-page summary{min-height:44px;display:flex;align-items:center}
  .ai-privacy summary{justify-content:center}
  .ai-session-details summary{min-height:44px}
  .ai-privacy{margin-top:10px}
  .ai-help-link{min-height:44px;margin-top:12px}
  .ai-text-button{min-height:44px;padding:10px 0}
  .ai-result-panel .ai-panel-heading{margin-bottom:20px}
  .ai-artwork-frame{min-height:0;border-radius:12px}
  .ai-artwork-frame img{max-height:460px}
  .ai-result-actions{padding-top:16px}
  .ai-refinement{margin-top:16px;padding-top:7px}
  .ai-review{margin-top:24px;padding:18px;scroll-margin-top:0}
  .ai-review-heading{padding-bottom:18px}
  .ai-review-grid{gap:18px}
  .ai-surface-tabs{gap:6px;margin-bottom:10px}
  .ai-surface-tabs button{min-height:44px;padding:10px 14px;font-size:.68rem}
  .ai-layout-frame{padding:6px;min-height:260px;border-radius:12px}
  #ai-product-viewer{min-height:330px}
  .ai-layout-controls{padding-top:18px}
  .ai-text-placement{gap:8px}
  .ai-text-placement button{min-height:62px;font-size:.72rem;padding:9px;gap:8px}
  .ai-text-placement svg{width:34px}
  .ai-font-choices button{min-height:52px;line-height:1.25}
  .ai-text-tools{gap:14px;margin-top:16px}
  .ai-text-tools input[type=color]{height:44px}
  .ai-align button{min-width:44px;height:44px}
  .ai-page input[type=range]{min-height:44px;margin:2px 0}
  .ai-precision{margin:14px 0;padding:8px 0}
  .ai-price-quantity{align-items:center}
  .ai-price-quantity label{width:96px}
  .ai-price-quantity input{min-height:44px!important}
  .ai-cart-success{padding:17px;gap:13px}
  .ai-design-card button{min-height:44px}
  .ai-saved-shortcut{min-height:44px;gap:9px;padding:8px 0 14px;font-size:.71rem}
  .ai-saved-shortcut strong{font-size:.69rem}
}
@media(max-width:350px){
  .ai-page{padding-inline:11px}
  .ai-panel,.ai-brief-panel,.ai-result-panel,.ai-review{padding:16px}
  .ai-mode-switch button{gap:5px;font-size:.64rem}
  .ai-mode-switch svg{width:18px;height:18px}
  .ai-journey li{font-size:.53rem}
  .ai-journey li span{width:20px;height:20px}
  .ai-text-placement button{gap:6px;padding:8px 6px;font-size:.68rem}
  .ai-text-placement svg{width:30px}
}

/* Clear creation choices and visible, indeterminate request feedback. */
body.hhc-storefront[data-page="ai-design"] .ai-mode-switch { background:#eee8ef; border:1px solid #ded3df; border-radius:16px; padding:5px; gap:5px; }
.ai-page .ai-mode-switch button { min-height:50px; border:1px solid transparent; border-radius:11px; background:transparent; color:#67596a; box-shadow:none; font-weight:550; padding:10px 8px; }
.ai-page .ai-mode-switch button[aria-pressed=true] { color:#fff; background:#583853; border-color:#583853; box-shadow:0 2px 5px #49304916; }
.ai-page .ai-mode-switch svg { width:21px; height:21px; }
.ai-result-panel { position:static; }
.ai-generation-progress { min-height:340px; border-radius:16px; background:radial-gradient(ellipse at 25% 25%,#e3e9dc,transparent 65%),radial-gradient(ellipse at 80% 80%,#e9dce8,transparent 65%); padding:26px 18px; }
.ai-progress-track { width:min(220px,80%); height:4px; overflow:hidden; border-radius:99px; background:#d7ced9; }
.ai-progress-track span { display:block; height:100%; width:38%; border-radius:inherit; background:#79557b; animation:ai-progress-travel 2s ease-in-out infinite; }
.ai-layout-loading { min-height:340px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:18px; color:#5c4860; border-radius:16px; background:#f3eff2; text-align:center; padding:24px; }
.ai-layout-loading .button { margin-top:8px; }
.ai-layout-loading .ai-progress-art { margin-bottom:8px; }
.ai-generation-progress[data-active=false] .ai-progress-art span,.ai-generation-progress[data-active=false] .ai-progress-track span,.ai-layout-loading[data-active=false] .ai-progress-art span { animation:none; }
.ai-generation-progress[data-active=false] .ai-progress-track { display:none; }
@keyframes ai-progress-travel { 0%{transform:translateX(-110%)} 100%{transform:translateX(370%)} }
@keyframes ai-breathe { 0%,100%{translate:0 0;opacity:.75} 50%{translate:0 -12px;opacity:1} }
@media(min-width:761px) {
 .ai-page { max-width:1240px; padding-top:30px; }
 .ai-page h1 { font-size:clamp(2.3rem,3.4vw,2.9rem); }
 .ai-page h2 { font-size:clamp(1.5rem,2.1vw,1.8rem); }
 .ai-panel { padding:25px; }
 .ai-panel-heading { margin-bottom:20px; }
 .ai-intro { margin-bottom:26px; }
}
@media(max-width:760px) {
 .ai-page .ai-mode-switch button { min-height:52px; padding:9px 5px; font-size:.68rem; }
 .ai-page .ai-mode-switch svg { width:18px; height:18px; }
 .ai-generation-progress,.ai-layout-loading { min-height:290px; }
}

.ai-product-example { aspect-ratio:1.25; display:grid; place-items:center; background:#f3f0e9; border-radius:16px; }
.ai-product-example #ai-example-image { width:100%; height:100%; max-height:460px; object-fit:contain; transform:none; }
.ai-product-example-note { font-size:.8rem; color:#637373; line-height:1.6; margin-top:18px!important; }
.ai-product-reference { display:flex; align-items:center; gap:14px; margin-top:12px; padding:10px; border-radius:12px; background:#f3f0e9; }
.ai-product-reference img { width:76px; height:70px; flex:0 0 76px; border-radius:8px; object-fit:contain; background:#fffcf8; }
.ai-product-reference strong { display:block; font-size:.77rem; line-height:1.45; color:#354f43; }
.ai-product-reference span { display:block; font-size:.66rem; color:#66766b; margin-top:4px; }

/* Product preparation stays visible until the protected product is ready. */
.ai-review { position:relative; }
.ai-review.is-preparing .ai-review-grid { position:absolute; inset:90px 26px auto; visibility:hidden; pointer-events:none; }
.ai-layout-loading { min-height:390px; background:radial-gradient(ellipse at 15% 20%,#ecd2df,transparent 62%),radial-gradient(ellipse at 85% 85%,#d3e5dd,transparent 65%),#faf1e4; }
#ai-layout-product { font-family:'Libre Baskerville',Georgia,serif; font-size:clamp(1.2rem,3vw,1.65rem); color:#314b48; }
.ai-layout-loading .ai-progress-track { height:5px; background:#ddd0d9; }
.ai-layout-loading .ai-progress-track span { background:linear-gradient(90deg,#896385,#d58b9b,#719e91); }
.ai-layout-stages { display:flex; gap:22px; font-size:.7rem; color:#786e77; }
.ai-layout-stages span { display:flex; align-items:center; gap:7px; }
.ai-layout-stages span:before { content:''; width:6px; height:6px; border-radius:50%; background:#bdb3bb; }
.ai-layout-loading[data-stage=compose] .ai-layout-stages span:first-child,.ai-layout-loading[data-stage=display] .ai-layout-stages span:last-child { color:#583853; font-weight:650; }
.ai-layout-loading[data-stage=compose] .ai-layout-stages span:first-child:before,.ai-layout-loading[data-stage=display] .ai-layout-stages span:last-child:before { background:#896385; }
.ai-layout-loading[data-active=false] .ai-progress-track,.ai-layout-loading[data-active=false] .ai-layout-stages { display:none; }
@media(max-width:760px){.ai-review.is-preparing .ai-review-grid{inset:80px 21px auto}.ai-layout-loading{min-height:330px;padding:22px 12px}.ai-layout-stages{gap:14px;font-size:.65rem}}

/* An illuminated writing surface, with the customer's words kept in focus. */
.ai-prompt-surface{position:relative;isolation:isolate;margin-top:23px;padding:18px;border:1px solid transparent;border-radius:16px;background:linear-gradient(120deg,#f8f3fa,#f7faf7 65%,#fdf9f2) padding-box,linear-gradient(120deg,#b9a0c5,#a5c6bc 62%,#dcc6a4) border-box;box-shadow:0 6px 22px #66456b09}
.ai-prompt-surface::before{content:"";position:absolute;top:0;right:0;width:115px;height:66px;z-index:-1;pointer-events:none;background:radial-gradient(circle,#937aa344 .8px,transparent 1px) 0 0/9px 9px;mask-image:linear-gradient(210deg,#000,transparent 75%);border-radius:0 16px 0 0}
.ai-prompt-heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.ai-prompt-heading label{margin:0;font-size:.83rem;flex:1;min-width:120px;color:#493049}
.ai-prompt-heading .ai-optional{font-size:.6rem;color:#706276}
.ai-prompt-spark{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:10px;background:linear-gradient(140deg,#ece0f1,#e1eee6);color:#79528a;box-shadow:inset 0 0 0 1px #b9a1c42b}
.ai-prompt-spark svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}
.ai-prompt-help{font-size:.68rem;line-height:1.6;color:#66716d;margin-top:8px!important}
.ai-prompt-surface .ai-photo-directions,.ai-prompt-surface .ai-inspiration{gap:6px;margin:13px 0 12px}
.ai-prompt-surface :is(.ai-photo-directions,.ai-inspiration) button{font-size:.64rem;min-height:38px;padding:7px 10px;color:#62655e;background:#ffffffa6;border-color:#d8d3db}
.ai-prompt-surface button[aria-pressed=true]{color:#fff;background:#67456e;border-color:#67456e;box-shadow:0 3px 8px #67456e20}
.ai-prompt-surface button[aria-pressed=true]::before{content:"✓";margin-right:5px;font-size:.7rem}
.ai-page .ai-prompt-surface textarea{margin:0;border-color:#c7bdce;background:#ffffffde;border-radius:10px;padding:13px;min-height:112px;line-height:1.65;color:#354342;box-shadow:inset 0 2px 5px #49304904}
.ai-page .ai-prompt-surface textarea::placeholder{color:#777b7b}
.ai-prompt-surface:focus-within{box-shadow:0 0 0 3px #b3a2c020,0 8px 28px #66456b0d}
.ai-page .ai-prompt-surface textarea:focus-visible{outline:2px solid #9471a2;outline-offset:2px;border-color:#9471a2;background:white}
.ai-prompt-surface-compact{margin-top:12px;padding:15px}
.ai-prompt-surface-compact label{margin:0 0 9px;color:#493049}
.ai-page .ai-prompt-surface-compact textarea{min-height:98px}
@media(prefers-reduced-motion:no-preference){.ai-prompt-surface{transition:box-shadow .25s}.ai-prompt-spark{transition:box-shadow .25s,transform .25s}.ai-prompt-surface:focus-within .ai-prompt-spark{transform:rotate(-8deg);box-shadow:0 0 18px #b3a2c059}}
@media(max-width:760px){.ai-prompt-surface{padding:14px;margin-top:19px}.ai-prompt-heading{gap:7px}.ai-prompt-heading label{font-size:.83rem}.ai-prompt-surface :is(.ai-photo-directions,.ai-inspiration) button{min-height:44px;font-size:.65rem}.ai-page .ai-prompt-surface textarea{font-size:1rem;padding:12px}.ai-prompt-surface-compact{margin-top:8px}}

/* A useful next step after a rejected design, without another generation. */
.ai-prompt-guidance { padding:clamp(1.1rem,3vw,1.8rem); border:1px solid #d9cadd; border-radius:1.4rem; background:linear-gradient(135deg,#f6eef8,#edf5ee); color:#263c38; scroll-margin-top:7rem; }
.ai-prompt-guidance h3 { margin:0 0 .5rem; font-size:clamp(1.35rem,2vw,1.65rem); }
.ai-prompt-guidance > p { margin:0 0 1.1rem; font-size:.95rem; line-height:1.55; }
.ai-guidance-choices { display:grid; gap:.65rem; }
.ai-guidance-choice { width:100%; min-height:44px; display:grid; gap:.25rem; padding:.85rem 1rem; border:1px solid #d9d6d8; border-radius:.85rem; background:#fffdfb; color:#263c38; text-align:left; font:inherit; cursor:pointer; white-space:normal; }
.ai-guidance-choice strong { font-size:.95rem; }
.ai-guidance-choice span { font-size:.85rem; line-height:1.45; color:#52645f; }
.ai-guidance-choice:hover,.ai-guidance-choice[aria-pressed="true"] { border-color:#806184; background:#f5edf7; }
.ai-guidance-choice:focus-visible,.ai-guidance-actions button:focus-visible { outline:3px solid #806184; outline-offset:3px; }
.ai-guidance-actions { display:flex; flex-wrap:wrap; gap:.5rem 1rem; margin-top:.7rem; }
.ai-guidance-actions button { min-height:44px; padding:.5rem 0; border:0; background:transparent; color:#64496b; font:inherit; font-size:.9rem; font-weight:650; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }

.ai-prompt-guidance:focus { outline:2px solid #806184; outline-offset:3px; }

/* Recovery replaces the waiting surface with a visible next step. */
.ai-prompt-guidance { position:relative; padding:clamp(20px,3vw,30px); background:radial-gradient(ellipse at 0 0,#eadced88,transparent 70%),linear-gradient(135deg,#faf4fa,#edf4ed); border-color:#cdb8d1; box-shadow:0 12px 32px #49304908; }
.ai-prompt-guidance h3 { font-size:clamp(1.35rem,2vw,1.65rem); line-height:1.16; letter-spacing:-.025em; color:#493049; outline-offset:5px; }
.ai-prompt-guidance > p { font-size:.92rem; line-height:1.5; }
.ai-prompt-guidance #ai-recovery-primary { width:auto; min-height:46px; padding:13px 21px; margin:2px 0 0; white-space:normal; font-size:.85rem; }
.ai-prompt-guidance .ai-recovery-status { margin:10px 0 0; font-size:.77rem; color:#53615b; }
.ai-prompt-guidance .ai-recovery-label { margin:24px 0 10px; font-size:.75rem; font-weight:600; color:#6a5b6b; }
.ai-guidance-choice { padding:12px 14px; border-color:#dfd5df; border-radius:13px; }
.ai-guidance-choice strong { font-size:.85rem; }
.ai-guidance-choice span { font-size:.77rem; line-height:1.45; }
.ai-guidance-actions { gap:6px 18px; margin-top:16px; }
.ai-guidance-actions a,.ai-recovery-link { display:inline-flex; align-items:center; min-height:44px; color:#64496b; font:inherit; font-size:.8rem; background:none; border:0; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.ai-guidance-actions button { font-size:.8rem; }
.ai-recovery-shortcut { position:fixed; z-index:80; bottom:max(18px,env(safe-area-inset-bottom)); right:24px; max-width:calc(100vw - 32px); padding:14px 22px; border:1px solid #e6d8e7; border-radius:999px; background:#583853; color:white; box-shadow:0 8px 26px #49304935; font:inherit; font-size:.85rem; font-weight:600; cursor:pointer; }
.ai-recovery-shortcut:focus-visible,.ai-recovery-link:focus-visible,.ai-guidance-actions a:focus-visible { outline:3px solid #806184; outline-offset:4px; }
@media(prefers-reduced-motion:no-preference){.ai-prompt-guidance{animation:ai-recovery-enter .25s ease-out}@keyframes ai-recovery-enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}}
@media(max-width:760px){.ai-prompt-guidance{padding:20px 17px;border-radius:17px}.ai-prompt-guidance #ai-recovery-primary{width:100%}.ai-prompt-guidance h3{font-size:1.35rem}.ai-recovery-shortcut{right:16px}.ai-guidance-choice span{font-size:.8rem}.ai-guidance-actions{column-gap:14px}}
