/* Independent photo card and collapsible adjustment cards. */
.editor-page .page-frame{max-width:1500px;width:100%;grid-template-columns:140px minmax(0,1fr) 140px;gap:24px;padding:28px 24px 0;margin-inline:auto}
.editor-page .main-content{min-width:0}
.editor-workspace{max-width:1100px;width:100%;margin-inline:auto}
.editor-page .editor-layout{display:flex;align-items:flex-start;justify-content:center;gap:0}
.editor-preview{display:flex;flex-direction:column;flex:0 1 640px;min-width:0;width:100%;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:0 12px 36px #47273d08;transition:transform 320ms cubic-bezier(.22,.7,.25,1)}
.editor-page .editor-heading{display:flex;justify-content:flex-end;min-height:38px;padding:0 0 14px;gap:12px}
.editor-tool{display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:8px;background:none;color:var(--muted);padding:4px;min-height:36px;font-size:13px;white-space:nowrap}
.editor-tool:hover{color:var(--accent-text)}
.editor-symbol{display:inline-block;width:20px;height:20px;flex:none;background:currentColor;mask:var(--editor-icon) center/contain no-repeat}
.sliders-symbol{--editor-icon:url('/design/icons/lucide/sliders-horizontal.svg')}.download-symbol{--editor-icon:url('/design/icons/lucide/download.svg')}.images-symbol{--editor-icon:url('/design/icons/lucide/images.svg')}
.chevron-symbol{--editor-icon:url('/design/icons/lucide/chevron-down.svg')}.flip-horizontal-symbol{--editor-icon:url('/design/icons/lucide/triangles-centerline-dashed-vertical.svg')}.flip-vertical-symbol{--editor-icon:url('/design/icons/lucide/triangles-centerline-dashed-horizontal.svg')}.rotate-symbol{--editor-icon:url('/design/icons/lucide/rotate-cw.svg')}.reset-symbol{--editor-icon:url('/design/icons/lucide/rotate-ccw.svg')}.pipette-symbol{--editor-icon:url('/design/icons/lucide/pipette.svg')}
.details-switch .switch-track{display:block;position:relative;width:36px;height:22px;border:1px solid var(--muted);border-radius:999px;background:var(--surface-alt);flex:none;transition:background 180ms,border-color 180ms}
.switch-thumb{position:absolute;top:3px;left:3px;width:14px;height:14px;border-radius:50%;background:var(--muted);transition:transform 180ms,background 180ms}
.details-switch[aria-checked=true] .switch-track{background:var(--accent);border-color:var(--accent)}
.details-switch[aria-checked=true] .switch-thumb{transform:translateX(14px);background:var(--on-accent)}
#editor-fields{border:0;padding:0;margin:0;min-width:0}
.editor-icon-button{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:24px}
.editor-icon-button:hover{background:var(--accent-soft);color:var(--accent-text)}
.preview-carousel{position:relative}
.editor-page .meme-stage{border-radius:10px;border:1px solid var(--line);aspect-ratio:1;background:var(--surface-alt)}
.editor-page .meme-stage canvas{height:100%;object-fit:contain}
.photo-cycle{position:absolute;z-index:2;top:50%;right:-20px;transform:translateY(-50%);width:40px;height:40px;display:grid;place-items:center;padding:0;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:50%;box-shadow:0 2px 8px #0000000d}
.photo-cycle.previous-photo{right:auto;left:-20px}.previous-photo .icon{transform:rotate(180deg)}.photo-cycle .icon{width:20px;height:20px;display:block}
.photo-cycle:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-text);border-color:var(--accent)}.photo-cycle:disabled{visibility:hidden}
.editor-page .candidate-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 0;min-height:0}
.editor-page .candidate{aspect-ratio:1.35;border-radius:10px}.editor-page .candidate img{display:block;width:100%;height:100%;object-fit:cover}
.editor-output-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.editor-output-actions button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:48px;min-height:48px;padding:10px 14px;box-sizing:border-box;font-size:15px;border-radius:10px}
.editor-output-actions .download-button{background:var(--accent);border:1px solid var(--accent);color:var(--on-accent)}
.editor-find-button{background:var(--white);border:1px solid var(--line);color:var(--ink)}.editor-find-button:hover{background:var(--accent-soft)}
.editor-page #editor-status{min-height:24px;font-size:13px;line-height:1.6;margin:14px 0 0}.editor-page #editor-status:empty{display:none}
/* Panel gets its own space; the photo and panel never share an outer border. */
.editor-page .caption-details{display:block;flex:0 0 auto;grid-template-rows:none;width:0;min-width:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateX(18px);transition:width 320ms cubic-bezier(.22,.7,.25,1),margin-left 320ms cubic-bezier(.22,.7,.25,1),opacity 200ms ease,transform 320ms ease,visibility 0s 320ms}
.editor-workspace.details-open .caption-details{width:340px;margin-left:22px;opacity:1;visibility:visible;transform:none;transition-delay:0s,0s,50ms,0s,0s}
.editor-page .caption-details-inner{width:340px;min-width:0;overflow:visible;padding:0}
.adjustment-section{border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:0 8px 28px #47273d06;overflow:hidden;margin-bottom:12px}
.section-toggle{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:16px;text-align:left;border:0;background:none;color:var(--ink);font-size:14px;font-weight:600;min-height:52px}
.section-toggle>span:first-child{display:flex;align-items:center;gap:9px}.section-toggle small{font-size:10px;font-weight:400;color:var(--muted)}
.section-toggle .chevron-symbol{width:18px;height:18px;transform:rotate(180deg);transition:transform 260ms ease}.section-toggle[aria-expanded=false] .chevron-symbol{transform:none}
.section-toggle:hover{background:var(--accent-soft)}
.accordion-body{display:grid;grid-template-rows:1fr;opacity:1;visibility:visible;transition:grid-template-rows 280ms ease,opacity 200ms ease,visibility 0s}
.accordion-body.is-collapsed{grid-template-rows:0fr;opacity:0;visibility:hidden;transition-delay:0s,0s,280ms}
.accordion-inner{min-height:0;overflow:hidden;padding:0 14px;transition:padding 280ms ease}.accordion-body:not(.is-collapsed)>.accordion-inner{padding-bottom:14px}
.style-previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:350px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:3px}
.style-preview{position:relative;display:grid;place-items:center;aspect-ratio:1.65;min-width:0;padding:8px 6px 20px;border:2px solid transparent;border-radius:10px;background:var(--surface-alt);color:var(--ink);overflow:hidden}
.style-preview img{width:100%;height:100%;min-height:0;object-fit:contain}.style-preview>span{position:absolute;bottom:3px;font-size:10px;color:var(--muted)}
.style-preview[aria-pressed=true],.style-preview:hover:not(:disabled){border-color:var(--accent)}.style-preview:disabled{opacity:.35;cursor:not-allowed}
.font-preview-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:215px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px}
.font-preview{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;width:100%;padding:9px 5px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:9px;text-align:center}
.font-preview[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}
.font-sample{font-size:18px;line-height:1.4;white-space:normal;word-break:keep-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:50px;max-height:51px;max-width:100%}
.font-preview small{font-size:9px;line-height:1.3;word-break:break-word;color:var(--muted)}
.color-setting{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.color-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:600}
.editor-text-button{border:0;background:none;padding:0;color:var(--muted);font-size:11px;text-decoration:underline;text-underline-offset:3px}
.editor-page .swatches{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px;flex-wrap:wrap}
.editor-page #caption-details .swatch,.custom-color{position:relative;flex:none;width:29px;height:29px;min-width:29px;min-height:29px;border:1px solid #c4c4ce;border-radius:50%;background:var(--swatch);padding:0}
.editor-page .swatch[aria-pressed=true],.custom-color.is-selected{outline:2px solid var(--accent);outline-offset:3px;border-color:var(--white)}
.editor-page .swatch:hover{box-shadow:0 0 0 3px var(--accent-soft)}
.custom-color{display:grid;place-items:center;background:var(--surface-alt);color:var(--ink);cursor:pointer}.custom-color .editor-symbol{width:15px;height:15px;pointer-events:none}
.custom-color:focus-within{outline:2px solid var(--accent-text);outline-offset:3px}
.custom-color input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;padding:0;border:0;border-radius:50%}
.decoration-setting{margin-top:16px}.setting-label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}
.decoration-flips{display:flex;gap:8px}.decoration-flips button{display:flex;justify-content:center;align-items:center;gap:7px;flex:1;padding:7px 8px;min-height:36px;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink);font-size:12px;white-space:nowrap}
.decoration-flips .editor-symbol{width:17px;height:17px}.decoration-flips button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent)}
.reset-style{display:flex;align-items:center;justify-content:center;gap:6px;margin:10px auto;text-decoration:none}.reset-style .editor-symbol{width:14px;height:14px}
/* Direct caption handles retain rotation without a separate rotation settings row. */
.caption-selection{position:absolute;z-index:4;box-sizing:border-box;border:1px solid transparent;border-radius:3px;cursor:move;touch-action:none;user-select:none}
.caption-selection:hover{border-color:var(--accent)}.caption-selection.is-selected{border-color:var(--accent-text);outline:1px solid var(--white);outline-offset:1px}.caption-selection:focus-visible{outline:2px solid var(--accent-text);outline-offset:3px}
.caption-selection .caption-handle{position:absolute;display:none;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;border:0;background:none;border-radius:0;touch-action:none}
.caption-handle::after{content:"";position:absolute;inset:10px;background:var(--white);border:2px solid var(--accent-text);border-radius:50%}
.caption-selection.is-selected .caption-handle{display:block}.handle-nw{left:-16px;top:-16px;cursor:nwse-resize}.handle-ne{right:-16px;top:-16px;cursor:nesw-resize}.handle-sw{left:-16px;bottom:-16px;cursor:nesw-resize}.handle-se{right:-16px;bottom:-16px;cursor:nwse-resize}
.caption-rotate-handle{display:none;place-items:center;position:absolute;top:-42px;left:calc(50% - 20px);width:40px;height:40px;padding:0;border:1px solid var(--accent);border-radius:50%;background:var(--white);color:var(--accent-text);touch-action:none;cursor:grab}
.caption-selection.is-selected .caption-rotate-handle{display:grid}
@media(pointer:coarse){.caption-selection .caption-handle{width:44px;height:44px}.caption-handle::after{inset:15px}.handle-nw{left:-22px;top:-22px}.handle-ne{right:-22px;top:-22px}.handle-sw{left:-22px;bottom:-22px}.handle-se{right:-22px;bottom:-22px}}
@media(max-width:1200px){.editor-page .page-frame{display:block;max-width:1100px;padding:24px 28px 0}.editor-page .ad-rail{display:none}}
@media(max-width:900px){
 .editor-page .page-frame{padding:18px 14px 0}.editor-page .editor-layout{display:flex;flex-direction:column;align-items:center}.editor-preview{flex:auto;max-width:600px;padding:16px;border-radius:16px}
 .editor-page .editor-heading{order:1;margin-top:12px;padding:0;min-height:44px}.editor-heading .details-switch{width:100%;justify-content:flex-start;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--accent-soft);color:var(--ink)}.editor-heading .switch-track{margin-left:auto}
 .editor-page .caption-details{display:grid;grid-template-rows:0fr;flex:none;width:100%;max-width:600px;max-height:none;margin:0;transform:translateY(12px);transition:grid-template-rows 320ms ease,margin-top 320ms ease,opacity 220ms ease,transform 320ms ease,visibility 0s 320ms}
 .editor-workspace.details-open .caption-details{width:100%;margin:16px 0 0;grid-template-rows:1fr;transform:none;transition-delay:0s,0s,0s,0s,0s}
 .editor-page .caption-details-inner{width:100%;min-height:0;overflow:hidden}.editor-page .editor-output-actions{grid-template-columns:1fr}.editor-page .editor-output-actions button{font-size:14px}
 .editor-page #editor-caption{font-size:16px}.editor-page #editor-caption::placeholder{font-size:14px}.photo-cycle{right:8px}.photo-cycle.previous-photo{left:8px}
 .style-previews{grid-template-columns:repeat(3,minmax(0,1fr));max-height:340px}.font-preview-list{grid-template-columns:repeat(4,minmax(0,1fr))}.editor-page .swatches{justify-content:flex-start;gap:14px}
}
@media(max-width:480px){.style-previews{grid-template-columns:repeat(2,minmax(0,1fr))}.font-preview-list{grid-template-columns:repeat(3,minmax(0,1fr))}.editor-page .swatches{justify-content:space-between;gap:8px}.section-toggle{padding:14px}.accordion-inner{padding-inline:12px}}
@media(max-width:360px){.editor-page .page-frame{padding-inline:10px}.editor-preview{padding:12px}.editor-page #caption-details .swatch,.custom-color{width:26px;height:26px;min-width:26px;min-height:26px}.editor-page .swatches{gap:6px}.decoration-flips button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.editor-preview,.editor-page .caption-details,.switch-track,.switch-thumb,.accordion-body,.accordion-inner,.chevron-symbol{transition:none!important}}

/* Mobile concept 3: a viewport-anchored sheet, leaving the photo above visible. */
.mobile-sheet-controls,.mobile-sheet-tabs{display:none}.close-symbol{--editor-icon:url('/design/icons/lucide/x.svg')}
@media(max-width:900px){
 .editor-page .caption-details{position:fixed;z-index:220;inset:auto 0 0;display:block;grid-template-rows:none;width:100%;max-width:none;margin:0;max-height:68dvh;border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;background:var(--white);box-shadow:0 -12px 40px #28212c22;opacity:1;visibility:hidden;transform:translateY(105%);transition:transform 320ms cubic-bezier(.22,.7,.25,1),visibility 0s 320ms}
 .editor-page.editor-details-open>.caption-details{width:100%;margin:0;visibility:visible;transform:none;transition-delay:0s}
 .editor-page .caption-details-inner{display:flex;flex-direction:column;min-height:0;width:100%;height:68dvh;max-height:650px;padding:0 14px calc(10px + env(safe-area-inset-bottom));overflow:hidden}
 .mobile-sheet-controls{display:block;flex:none}.sheet-grip{display:grid;place-items:center;width:100%;min-height:20px;touch-action:none;border:0;background:none;padding:0}.sheet-grip>span{width:38px;height:4px;border-radius:4px;background:var(--line)}
 .mobile-sheet-heading{display:flex;align-items:center;justify-content:space-between;min-height:34px}.mobile-sheet-heading strong{font-size:15px}.mobile-sheet-heading .editor-icon-button{width:36px;height:36px}
 .mobile-sheet-tabs{display:flex;gap:3px;flex:none;border-radius:999px;background:var(--surface-alt);padding:3px;margin:5px 0 6px}.mobile-sheet-tabs button{flex:1;min-height:34px;border:0;border-radius:999px;background:none;color:var(--muted);font-size:12px}.mobile-sheet-tabs button[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}
 .caption-details .adjustment-section{background:none;border:0;border-radius:0;box-shadow:none;margin:0;overflow:hidden}
 .caption-details #style-picker{display:flex;flex-direction:column;min-height:0;flex:1}.caption-details #style-picker .section-toggle{flex:none;padding:4px 2px;min-height:26px;font-size:12px;pointer-events:none}.caption-details .section-toggle .chevron-symbol{display:none}
 .caption-details #style-content{min-height:0;flex:1;overflow:hidden}.caption-details #style-content .accordion-inner{height:100%;padding:0;overflow:hidden}.caption-details .style-previews{height:100%;max-height:none;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(70px,calc((100vw - 40px)/4.1),130px);align-content:start;overflow:auto;gap:7px}
 .caption-details .style-preview{aspect-ratio:auto;height:100%;padding:6px 5px 17px}.caption-details .style-preview>span{font-size:9px}
 .caption-details #font-picker{flex:none;margin-top:7px}.caption-details #font-picker>.section-toggle{min-height:24px;padding:2px;font-size:12px;pointer-events:none}.caption-details #font-content>.accordion-inner{padding:0 2px}
 .caption-details[data-tab=style] .font-preview-list{display:flex;gap:6px;max-height:82px;padding:2px 2px 4px;overflow:auto}.caption-details[data-tab=style] .font-preview{flex:none;width:84px;padding:5px}.caption-details[data-tab=style] .font-sample{font-size:15px;min-height:36px;max-height:40px;line-height:1.2}.caption-details[data-tab=style] .font-preview small{font-size:8px}
 .caption-details[data-tab=style] .color-setting{display:none}.caption-details .decoration-setting{margin-top:7px}.caption-details .decoration-setting .setting-label{display:none}.caption-details .decoration-flips{margin:0}.caption-details .decoration-flips button{min-height:34px;padding:5px 7px}
 .caption-details[data-tab=font] #style-picker{display:none}.caption-details[data-tab=font] #font-picker{display:flex;flex-direction:column;flex:1;min-height:0}.caption-details[data-tab=font] #font-content{display:block;overflow:auto;min-height:0}.caption-details[data-tab=font] .font-preview-list{max-height:none;grid-template-columns:repeat(3,minmax(0,1fr))}.caption-details[data-tab=font] .color-setting{margin-top:10px;padding-top:10px}.caption-details[data-tab=font] .decoration-setting{margin-bottom:3px}
 .caption-details .reset-style{flex:none;min-height:22px;font-size:10px;margin:4px auto 0}.caption-details.sheet-peek .mobile-sheet-tabs,.caption-details.sheet-peek .adjustment-section,.caption-details.sheet-peek .reset-style{display:none}.caption-details.sheet-peek .caption-details-inner{height:calc(70px + env(safe-area-inset-bottom))}
 .editor-page .preview-carousel{scroll-margin-top:calc(var(--site-header-height,60px) + var(--site-menu-nav-height,44px) + 10px)}
}
@media(max-width:900px) and (max-height:520px){.editor-page .caption-details-inner{height:calc(100dvh - 115px);max-height:none;overflow:auto}.caption-details #style-picker{flex:none}.caption-details .style-previews{height:110px}.caption-details .mobile-sheet-controls,.caption-details .mobile-sheet-tabs{position:relative}.caption-details[data-tab=font] #font-picker{flex:none}}


/* One aligned input/tool row on desktop; mobile keeps its bottom-sheet switch. */
.editor-page #editor-form{min-width:0;margin:0 0 12px}
#clear-caption[hidden]{display:none}
@media(min-width:901px){.editor-preview{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:14px}.editor-page .editor-heading{grid-column:2;grid-row:1;align-self:start;min-height:48px;padding:0;align-items:center}.editor-page #editor-form{grid-column:1;grid-row:1}.editor-preview>:is(.preview-carousel,.candidate-row,.editor-output-actions,#editor-status){grid-column:1/-1}}

/* Desktop photo size is set up front; opening/folding the inspector only moves it. */
@media(min-width:901px){
 .editor-page .page-frame{grid-template-columns:minmax(0,1fr);max-width:1440px;padding-inline:24px}
 .editor-page .page-frame>.ad-rail{display:none}
 .editor-workspace{max-width:1200px}
 .editor-preview{flex:0 0 calc(100% - 362px);max-width:720px;height:891px;grid-template-rows:auto minmax(0,1fr) auto auto auto}
 .editor-preview .preview-carousel{grid-row:2;min-height:0;align-self:stretch;container-type:size;display:grid;place-items:center}
 .editor-preview .meme-stage{width:min(100cqw,100cqh);height:min(100cqw,100cqh);min-height:0;aspect-ratio:1}
 .editor-preview .photo-cycle{right:calc((100% - min(100cqw,100cqh))/2 - 20px)}
 .editor-preview .previous-photo{right:auto;left:calc((100% - min(100cqw,100cqh))/2 - 20px)}
 .editor-preview .candidate-row{grid-row:3}
 .editor-preview .candidate-row:empty{display:none}
 .editor-preview .candidate{height:100px;aspect-ratio:auto}
 .editor-preview .editor-output-actions{grid-row:4}
 .editor-preview #editor-status{grid-row:5}
 .editor-output-actions #match-button{margin-top:0}
}
@media(min-width:901px) and (max-width:1100px){.editor-page .page-frame{padding-inline:12px}}

/* Result caption is read-only; a separate explicit submit commits a new phrase. */
.caption-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:10px;margin-bottom:12px;min-width:0}
.caption-quote{min-width:0;display:flex;align-items:center;justify-content:center;gap:3px;margin:0;padding:11px 12px;min-height:50px;border:1px solid var(--line);border-radius:12px;background:var(--surface-alt);color:var(--ink);font-size:17px;font-weight:650;line-height:1.4}
.caption-quote output{min-width:0;overflow-wrap:anywhere}.caption-quote>span{color:var(--muted);flex:none}
.edit-caption-button{display:flex;justify-content:center;align-items:center;gap:7px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);font-size:13px;white-space:nowrap}
.edit-caption-button:hover{border-color:var(--accent);background:var(--accent-soft)}.edit-caption-button .editor-symbol{width:18px;height:18px}
.editor-page #editor-form{padding:13px;border:1px solid var(--line);border-radius:16px;background:var(--white)}
.editor-page #editor-form[hidden]{display:none}
.caption-edit-actions{display:flex;gap:8px;margin-top:12px}.caption-edit-actions .primary{font-size:13px;padding:10px 14px;min-height:40px;gap:7px}.caption-edit-actions .secondary{font-size:12px}
#caption-edit-status{font-size:12px;margin-bottom:0}
@media(min-width:901px){
 .editor-page #caption-summary{grid-column:1;grid-row:1}
 .editor-page #editor-form{grid-column:1/-1;grid-row:2}
 .editor-preview{grid-template-rows:auto auto minmax(0,1fr) auto auto auto}
 .editor-preview .preview-carousel{grid-row:3}.editor-preview .candidate-row{grid-row:4}.editor-preview .editor-output-actions{grid-row:5}.editor-preview #editor-status{grid-row:6}
}
@media(max-width:900px){.caption-summary{gap:8px}.caption-quote{font-size:16px}.edit-caption-button{font-size:12px;padding:9px 10px;gap:6px}.edit-caption-button .editor-symbol{width:16px;height:16px}.editor-page #editor-form{margin-bottom:14px}}
@media(max-width:360px){.caption-quote{font-size:14px;padding-inline:8px}.edit-caption-button{font-size:11px;padding-inline:8px}}

/* A single media width owns the result row, square canvas, thumbnails and actions.
   Do not fit the canvas to a fixed card height: that made it narrower at QHD. */
.editor-page .editor-preview .candidate-row{grid-template-columns:repeat(3,minmax(0,88px));justify-content:center;width:100%;margin-inline:0;box-sizing:border-box}
.editor-page .editor-preview .candidate{aspect-ratio:1;width:100%;height:auto}
.editor-page .editor-preview .candidate img{aspect-ratio:1;object-fit:cover}
@media(min-width:901px){
 .editor-page .editor-preview{max-width:650px;height:auto;grid-template-rows:auto auto auto auto auto auto;align-content:start}
 .editor-page .editor-preview .preview-carousel{container-type:normal;display:block;width:100%;height:auto;align-self:start}
 .editor-page .editor-preview .meme-stage{width:100%;height:auto;max-width:600px;aspect-ratio:1;margin-inline:auto}
 .editor-page .editor-preview .photo-cycle{right:-20px}.editor-page .editor-preview .previous-photo{right:auto;left:-20px}
}
@media(max-width:620px){.editor-page .editor-preview .candidate-row{grid-template-columns:repeat(3,minmax(0,72px));gap:8px}}
