/* An explicitly selected storefront effect uses the shop's configured duration. */
.store-hero .slides{transition:transform var(--slide-duration,750ms) ease,height var(--slide-duration,750ms) ease!important}.store-hero.fade .slide{transition:opacity var(--slide-duration,750ms) ease!important}
.slide-static-controls{display:flex;align-items:center;gap:12px;min-width:0;padding-top:3px}.slide-static-controls>.check-label{flex:0 0 auto;margin:0;white-space:nowrap}.slide-static-controls>[data-slide-fixed-field]{flex:1;min-width:0}.slide-static-controls select{width:100%;min-width:0}.slide-static-controls label{font-size:.8rem}.slide-settings-grid{align-items:center}.slide-settings-grid>.full p{margin-bottom:0}.slide-fields{margin-top:0}
.hero-background-toolbar{display:grid;grid-template-columns:minmax(170px,1fr) minmax(0,2fr);gap:14px;align-items:start;margin-top:16px}.hero-background-toolbar>label{min-width:0}.hero-background-toolbar select{width:100%;min-width:0}.hero-background-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:24px}.hero-background-buttons>.upload-button,.hero-background-buttons>button{margin:0;font-size:12px;padding:8px 12px;min-height:36px}.hero-image-requirements{line-height:1.5;margin:10px 0}.hero-background-options{margin-top:8px}.hero-art .hero-image-element img{display:block;position:static;width:100%;height:100%;max-height:none;object-fit:contain;border-radius:0;margin:0}.hero-flow .hero-image-element{order:-1;height:180px!important}.hero-art-editor .hero-image-element{pointer-events:auto}
@media(max-width:1000px){.slide-static-controls{flex-wrap:wrap}.slide-static-controls>[data-slide-fixed-field]{flex-basis:100%}.hero-background-toolbar{grid-template-columns:1fr}.hero-background-buttons{padding-top:0}}
@media(max-width:700px){.slide-static-controls{padding:8px 0;align-items:start}.slide-static-controls>[data-slide-fixed-field]{width:100%}.hero-background-buttons{gap:8px}.hero-background-buttons>.upload-button,.hero-background-buttons>button{flex:1 1 140px}}

/* Visual background picker with vertically stacked actions. */
.hero-background-toolbar{grid-template-columns:minmax(0,1fr) 200px;align-items:start}.hero-background-buttons{flex-direction:column;align-items:stretch;padding-top:27px;gap:8px}.hero-background-buttons>button,.hero-background-buttons>.upload-button{width:100%;flex:none;text-align:center;box-sizing:border-box}.hero-background-label{display:block;font-weight:600;font-size:.85rem;margin-bottom:8px}.hero-background-picker{min-width:0}.hero-background-picker details{position:relative}.hero-background-picker summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;border:1px solid var(--border,#e9dcd8);border-radius:5px;background:#fff;padding:10px}.hero-background-picker summary::-webkit-details-marker{display:none}.hero-background-picker summary>[data-hero-background-current]{flex:1;min-width:0;display:grid;gap:8px}.hero-background-picker img,.hero-background-empty{display:block;width:100%;height:135px;object-fit:cover;border-radius:3px}.hero-background-empty{background:#fff;border:1px solid #e9dcd8;display:grid;place-items:center;color:#79676b;box-sizing:border-box}.hero-background-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;margin-top:6px;max-height:340px;overflow:auto;background:#fff;border:1px solid #e9dcd8;border-radius:5px}.hero-background-choices button{display:grid;gap:6px;padding:6px;text-align:left;background:#fff;border:1px solid #e9dcd8;border-radius:4px;color:inherit;font-size:12px}.hero-background-choices img,.hero-background-choices .hero-background-empty{height:70px}.hero-background-choices button[aria-pressed=true]{outline:2px solid #7a2545;outline-offset:-2px}.hero-background-picker summary:focus-visible,.hero-background-choices button:focus-visible{outline:2px solid #7a2545;outline-offset:2px}
@media(max-width:700px){.hero-background-toolbar{grid-template-columns:minmax(0,1fr)}.hero-background-buttons{padding-top:0}.hero-background-buttons>.upload-button,.hero-background-buttons>button{flex:none}.hero-background-picker img,.hero-background-empty{height:120px}.hero-background-choices img,.hero-background-choices .hero-background-empty{height:65px}}

.hero-resize-frame{position:absolute;pointer-events:none;z-index:100;outline:2px solid #7a2545;box-sizing:border-box}.hero-resize-handle{position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #7a2545;box-shadow:0 1px 4px #0003;pointer-events:auto;touch-action:none;box-sizing:border-box}.hero-resize-handle.nw{left:0;top:0;transform:translate(-30%,-30%);cursor:nwse-resize}.hero-resize-handle.ne{right:0;top:0;transform:translate(30%,-30%);cursor:nesw-resize}.hero-resize-handle.sw{left:0;bottom:0;transform:translate(-30%,30%);cursor:nesw-resize}.hero-resize-handle.se{right:0;bottom:0;transform:translate(30%,30%);cursor:nwse-resize}.hero-design-dialog input[data-hero-prop="transparency"]{display:block;width:100%;accent-color:#7a2545}

.hero-editor-tools{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:24px;margin-top:8px}.hero-editor-tools>.actions{margin:0;gap:10px;align-self:end;padding-bottom:0}.hero-editor-tools>.hero-background-options{margin:0;min-width:0}.hero-editor-tools .hero-background-options>h3{margin:0 0 6px;font-size:.9rem;line-height:1.2}.hero-editor-tools .design-properties{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.4fr);gap:8px;align-items:end}.hero-editor-tools .design-properties>label{margin:0;min-width:0;font-size:.7rem;line-height:1.3}.hero-editor-tools .design-properties input{width:100%;min-width:0;margin:4px 0 0;height:40px;box-sizing:border-box}.hero-editor-tools .design-properties input[type=range]{padding:0;accent-color:var(--primary,#7a2545)}@media(max-width:1000px){.hero-editor-tools{grid-template-columns:1fr;gap:12px;align-items:start}.hero-editor-tools>.actions{justify-content:flex-start}.hero-editor-tools .design-properties{grid-template-columns:1fr 1fr}.hero-editor-tools .design-properties>label:last-child{grid-column:1/-1}}

.hero-properties-top{display:flex;align-items:start;gap:10px;justify-content:space-between}.hero-properties-top .design-checks{flex:1}.hero-stack-open{font-size:12px;padding:7px 10px;white-space:nowrap}.hero-stack-panel{position:fixed;z-index:500;width:310px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow:auto;background:var(--surface,#fff);color:var(--text,#3b2428);border:1px solid var(--border,#e9dcd8);border-radius:7px;box-shadow:0 8px 32px #0003;padding:12px;box-sizing:border-box}.hero-stack-panel header{display:flex;align-items:center;justify-content:space-between;cursor:move;touch-action:none;border-bottom:1px solid var(--border,#e9dcd8);padding-bottom:8px}.hero-stack-panel header .icon-button{width:30px;height:30px}.hero-stack-panel>p{font-size:12px;margin:8px 0}.hero-stack-row{display:flex;align-items:center;gap:6px;border:1px solid var(--border,#e9dcd8);border-radius:4px;margin:6px 0;background:var(--background,#fff9f5);padding:4px}.hero-stack-row.active{outline:2px solid var(--primary,#7a2545);outline-offset:-2px}.hero-stack-row button{background:transparent;color:inherit}.stack-grip{cursor:grab;font-size:20px;padding:4px}.stack-select{flex:1;min-width:0;padding:4px;display:grid;gap:4px;text-align:center}.stack-select img{height:42px;width:100%;object-fit:contain}.stack-text-preview{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:13px}.stack-select small{font-size:10px;color:var(--muted,#79676b)}.stack-arrows{display:grid}.stack-arrows button{padding:2px 9px;min-height:28px}.stack-background{font-size:11px;padding:10px;color:var(--muted,#79676b);border-top:1px solid var(--border,#e9dcd8)}

.hero-reset-button{width:100%;margin-top:16px}.hero-editor-tools>.actions>.upload-button{margin:0;display:inline-flex;align-items:center;justify-content:center;min-height:46px;box-sizing:border-box}.hero-editor-tools>.actions{flex-wrap:wrap}.hero-editor-tools>.actions>button,.hero-editor-tools>.actions>.upload-button{font-size:12px;padding:12px 14px}

/* Shared explicit text alignment, independent of block align-content support. */
.hero-art .hero-element:not(.hero-image-element){display:flex;flex-direction:column;justify-content:center;align-items:stretch}.hero-art .hero-text-content{display:block;flex:0 0 auto;width:100%;min-width:0;margin:0;padding:0;white-space:inherit;overflow-wrap:inherit;line-height:inherit;font:inherit;color:inherit;text-align:inherit}.hero-art .hero-cta{align-items:center}.hero-art .hero-cta .hero-text-content{text-align:inherit}

/* Full mobile covers fill the common slideshow height, regardless of copy length.
   Shared by uploaded backgrounds and all templates; editor previews remain natural. */
.store-hero .slides:not(.hero-measuring) .hero-flow.mode-full .hero-canvas{
 min-height:var(--hero-active-height,0px);
}
