/* Three-screen composition. Shared colours, cards and controls belong to brand.css. */
[hidden]{display:none!important}.create-page{overflow-wrap:anywhere}.create-page p{margin:0}.create-page img{max-width:100%;height:auto}.create-page a{color:var(--accent)}.create-page button{cursor:pointer}.create-page fieldset{min-width:0;border:0;padding:0;margin:0}.create-page h2{font-size:23px;line-height:1.15;letter-spacing:-.5px;margin:0 0 12px}.create-page h3{font-size:18px}.sr-only,.view-enhanced #style-native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.flow-announcement{height:26px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--surface);color:var(--muted);font-size:10px}.flow-announcement>span{background:var(--yellow);color:var(--ink);font-size:8px;padding:2px 6px;border-radius:3px;letter-spacing:.7px}.flow-nav{height:58px;max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:0 var(--page-gutter)}.flow-nav a{display:flex;align-items:center;min-height:44px;font-size:11px;text-decoration:none}.flow-nav img{display:block;width:165px;height:34px}.flow-shell{max-width:1100px;margin:auto;padding:0 var(--page-gutter) 140px}.flow-stepbar{height:60px;display:flex;justify-content:space-between;align-items:center}.flow-back{font-size:12px;text-decoration:none;padding-block:12px}.flow-steps{display:flex;align-items:center;gap:4px}.flow-steps>span{font-size:10px;color:var(--muted);margin-right:8px}.flow-steps i{width:5px;height:5px;border-radius:50%;background:var(--line)}.flow-steps i.is-current{background:var(--yellow)}.flow-steps i.is-done{background:var(--accent)}.flow-intro{margin-bottom:24px}.create-page .eyebrow{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:12px}.underline{background:linear-gradient(transparent calc(100% - 6px),var(--yellow) 0);background-repeat:no-repeat;white-space:nowrap}.create-page .intro-note{color:var(--muted);margin-top:16px}.small,.dock-note{font-size:11px;color:var(--muted);line-height:1.6}.flow-status{font-size:12px;color:var(--muted);margin-block:12px!important;white-space:pre-wrap}.flow-status:empty{display:none}.photo-scene{position:relative;min-height:250px;display:grid;place-items:center;overflow:hidden;border:0!important;padding:16px!important}.scene-word{position:absolute;top:20px;left:20px;font-size:9px;letter-spacing:1px;color:var(--accent);line-height:1.4}.scene-star{position:absolute;right:28px;top:30px;color:var(--accent);font-size:27px}.scene-corner{position:absolute;writing-mode:vertical-rl;right:12px;top:100px;font-size:9px;letter-spacing:.8px;color:var(--muted)}.photo-print{margin:0;width:172px;background:var(--white);padding:9px 9px 8px;box-shadow:0 10px 16px #25334818;transform:rotate(-3deg)}.photo-print img{width:154px;height:184px;object-fit:cover!important;display:block}.photo-print figcaption{font-size:8px;line-height:1.4;color:var(--muted);padding-top:5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-tips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px 0 16px;border-bottom:1px solid var(--line);margin-bottom:20px}.photo-tips div>span{display:block;font-size:18px;margin-bottom:4px}.photo-tips b{display:block;font-size:12px;font-weight:500}.photo-tips p{font-size:10px;color:var(--muted)}.photo-guide{border-top:1px solid var(--line);padding-top:20px}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;margin:16px 0}.guide-grid figure{margin:0;min-width:0}.guide-grid img{display:block;aspect-ratio:1;width:100%;object-fit:cover;border-radius:var(--radius-input)}.guide-grid figcaption{padding-top:8px;font-size:12px}.guide-grid b,.guide-grid span{display:block}.guide-grid b{font-weight:600}.guide-grid span{font-size:10px;color:var(--muted);margin-top:4px}.guide-grid figure:first-child b{color:var(--success)}.upload-controls{margin-top:20px}.photo-input{font:inherit;max-width:100%;min-height:44px}.view-enhanced .photo-input{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.action-dock{padding-top:20px}.dock-inner{max-width:410px}.dock-note{text-align:center;margin-top:8px!important}.choose-photo{cursor:pointer}.change-photo{display:block;font-size:12px;color:var(--accent);text-align:center;padding:8px;cursor:pointer}.view-enhanced:not(.has-local-photo) .check-photo,.view-enhanced:not(.has-local-photo) .change-photo,.view-enhanced.has-local-photo .choose-photo{display:none}.create-page .mpoi-button:disabled{background:var(--surface);border-color:var(--surface);color:var(--muted);cursor:default}.create-page .mpoi-button:disabled:active{transform:none}.flow-text-button{background:none;color:var(--accent);border:0;padding:10px 0;min-height:44px;text-align:left;font:inherit;font-size:12px}.label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:16px 0 12px}.label-row h2{font-size:14px;font-weight:500;margin:0;letter-spacing:0}.choice-stage{display:grid;min-height:275px;place-content:center;text-align:center;gap:16px;border:0!important}.source-photo{background:var(--white);padding:8px;box-shadow:0 8px 16px #25334815;width:184px;min-height:190px;display:grid;place-items:center}.source-photo img{height:190px;width:168px;object-fit:cover!important}.source-photo:has(img:not([hidden])) .empty-photo,.waiting-print:has(img:not([hidden])) .empty-photo{display:none}.empty-photo{display:block;font-size:52px;color:var(--accent)}.style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.create-page .style-option{padding:6px;text-align:left;cursor:pointer;background:transparent;border-radius:var(--radius-input);font:inherit;align-self:stretch}.create-page .style-option[aria-pressed=true]{background:var(--selection);border-color:var(--selection-line);color:var(--accent)}.style-option .style-swatch{width:100%;aspect-ratio:1;display:grid;place-items:center;background:var(--surface);border-radius:6px;overflow:hidden;margin-bottom:8px;color:var(--muted);font-size:22px}.style-swatch img{width:100%;height:100%;aspect-ratio:1;object-fit:cover!important}.style-option b{font-weight:500;font-size:11px;line-height:1.25;display:block;min-height:29px}.style-option[aria-pressed=true] b::after{content:' ✓'}.style-note{margin-top:12px!important}.style-content{min-width:0}.waiting-layout{margin-top:12px}.waiting-visual{position:relative;min-height:225px;display:grid;place-items:center;border:0!important;overflow:hidden}.waiting-visual .scene-word{left:auto;right:20px}.waiting-visual .scene-star{top:auto;bottom:20px;left:24px;right:auto}.waiting-print{margin:0;background:var(--white);box-shadow:0 10px 16px #25334818;padding:8px;width:136px;min-height:174px;display:grid;place-items:center;transform:rotate(-3deg)}.waiting-print img{width:120px;height:158px;object-fit:cover!important}.waiting-copy{padding-top:20px}.progress-label{font-weight:600;font-size:14px;margin-bottom:8px!important}.progress-track{height:4px;background:var(--line);border-radius:4px;overflow:hidden;margin:8px 0 12px}.progress-track i{display:block;height:100%;width:30%;background:var(--accent);animation:waiting-pulse 2s ease-in-out infinite alternate}.waiting-note{font-size:13px;color:var(--muted);margin:24px 0!important}.portrait-stage{position:relative;min-height:275px;display:grid;place-items:center;border:0!important;padding:32px 40px!important}.portrait-mat{background:var(--white);padding:10px;width:184px;min-height:184px;box-shadow:0 10px 16px #25334818;display:grid;place-items:center}.portrait-mat #preview{width:100%;height:auto;max-height:300px;object-fit:contain}.original-photo{position:absolute;left:16px;top:16px;max-width:60px;font-size:9px;color:var(--muted)}.original-photo img{border:2px solid var(--white);height:42px;width:42px;border-radius:50%;object-fit:cover!important}.original-photo span{display:block;margin-top:4px}.original-photo:has(img[hidden]){display:none}.portrait-controls{padding-top:20px}.portrait-controls h2{font-size:18px}.portrait-controls p{margin-top:16px}#history{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}#history button{background:transparent;border:1px solid var(--line);border-radius:var(--radius-pill);padding:10px 12px;color:var(--ink);min-height:44px;font:inherit;font-size:11px}#history button:disabled{background:var(--selection);border-color:var(--selection-line);color:var(--accent)}.gallery-meta{border-top:1px solid var(--line);margin:24px 0;padding-top:16px;font-size:12px}.gallery-meta>p{margin-bottom:8px}.gallery-meta a{overflow-wrap:anywhere}.share-panel{margin-block:24px}.flow-footnote{font-size:11px;color:var(--muted);line-height:1.6;margin:32px 0}.flow-footnote details{margin-top:16px}.flow-footnote summary{min-height:44px;cursor:pointer}.flow-footnote details p{margin-bottom:16px}
/* Product and checkout nodes keep their original contents and behavior. */
#products{display:flex;gap:12px;flex-wrap:wrap}#products figure{width:min(220px,100%);margin:0}#products img{height:auto;max-width:100%}
/* Enhanced navigation only changes which of the existing screens is presented. */
.view-enhanced #painting-panel{display:none}.view-enhanced[data-portrait-view="upload"] #generate-form,.view-enhanced[data-portrait-view="upload"] #results,.view-enhanced[data-portrait-view="style"] #upload-form,.view-enhanced[data-portrait-view="style"] #results,.view-enhanced[data-portrait-view="waiting"] #upload-form,.view-enhanced[data-portrait-view="waiting"] #generate-form,.view-enhanced[data-portrait-view="portrait"] #upload-form{display:none}.view-enhanced[data-portrait-view="waiting"] #painting-panel{display:grid}.view-enhanced[data-portrait-view="portrait"] #painting-panel{display:none}
@media(max-width:759px){.view-enhanced[data-portrait-view="upload"] #upload-form .action-dock,.view-enhanced[data-portrait-view="style"] #generate-form .action-dock{position:fixed;bottom:0;left:0;right:0;padding:12px var(--page-gutter) max(12px,env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);z-index:10}.dock-inner{margin:auto}.flow-shell{max-width:560px}.flow-status{max-width:100%}}
@media(min-width:760px){.flow-shell{position:relative;padding-top:0;padding-bottom:60px}.flow-stepbar{height:88px;border-bottom:1px solid var(--line);margin-bottom:24px}.flow-intro{width:calc(50% - 30px);min-height:210px}.flow-status{max-width:calc(50% - 30px)}.upload-layout,.style-layout,.portrait-layout,.waiting-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 60px;align-items:start}.upload-visual,.choice-stage,.portrait-visual,.waiting-visual{grid-column:2;grid-row:1/4}.upload-visual,.choice-stage,.portrait-visual,.waiting-visual{margin-top:-250px}.photo-guide,.style-content,.waiting-copy{grid-column:1;grid-row:1;min-width:0}.photo-guide{padding-top:20px}.upload-controls{grid-column:1;grid-row:2;margin:0}.photo-scene{min-height:430px}.photo-print{width:248px}.photo-print img{width:230px;height:286px}.photo-tips b{font-size:14px}.photo-tips p{font-size:12px}.photo-guide h2{font-size:28px}.guide-grid img{max-height:180px}.style-layout .action-dock{grid-column:1;grid-row:2}.choice-stage{min-height:420px}.style-grid{gap:12px}.style-option b{font-size:13px;min-height:34px}.source-photo{width:260px;min-height:280px}.source-photo img{width:244px;height:264px}.waiting-visual{min-height:420px}.waiting-print{width:216px;min-height:280px}.waiting-print img{width:200px;height:264px}.waiting-copy{padding:0}.waiting-note{font-size:15px}.portrait-stage{min-height:480px}.portrait-mat{width:280px}.portrait-mat #preview{max-height:390px}.portrait-controls{grid-column:1;grid-row:1;padding:0}.gallery-meta{max-width:calc(50% - 30px);min-height:100px}.create-page .mpoi-button{max-width:410px}.flow-footnote{max-width:600px}.flow-status{min-height:18px}.create-page[data-portrait-view="waiting"] .flow-status{margin-bottom:24px!important}}
@media(max-width:359px){.flow-nav img{width:145px}.style-option b{font-size:10px}.photo-scene{min-height:222px}.photo-print{width:152px}.photo-print img{width:134px;height:163px}.scene-word{font-size:8px}.portrait-stage{padding-inline:32px!important}.label-row .small{font-size:10px}}
@keyframes waiting-pulse{from{transform:translateX(-30%)}to{transform:translateX(260%)}}@media(prefers-reduced-motion:reduce){.progress-track i{animation:none;transform:none}}

.view-enhanced[data-painting-active="false"] .progress-track{display:none}

.view-enhanced[data-portrait-view="portrait"][data-retry-available="true"] #painting-panel{display:block;margin-bottom:24px}.view-enhanced[data-portrait-view="portrait"] #painting-panel .waiting-visual,.view-enhanced[data-portrait-view="portrait"] #painting-panel .waiting-note{display:none}

.view-enhanced:not([data-portrait-view="upload"]) #return-to-gallery{display:none}.portrait-layout:has(#preview[hidden]){display:none}.view-enhanced[data-portrait-view="waiting"] .portrait-layout{margin-top:32px}.view-enhanced[data-portrait-view="waiting"] .portrait-visual{margin-top:0}

.mpoi.create-page .style-option{padding:6px;border-radius:var(--radius-input)}#generate::after{content:"↗";font-size:21px;font-weight:400}#painting-panel{display:none}
.view-enhanced[data-portrait-view="waiting"] #painting-panel{display:grid}
