/* Shared component appearance. Consuming themes supply brand variables. */
.mtt-collection-heart,.mtt-collection-launcher,.mtt-post-email,.mtt-collection-close{font:inherit;color:var(--mtt-collection-accent,#292421);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:44px;min-height:44px;border:1px solid transparent;background:transparent;padding:.5rem;line-height:1.2}
.mtt-collection-heart{width:44px;height:44px;box-sizing:border-box;padding:5px;position:absolute;inset:.25rem .25rem auto auto;z-index:2;border-radius:0;background:transparent;box-shadow:none}
.mtt-collection-heart svg{width:var(--mtt-collection-heart-size,20px);height:var(--mtt-collection-heart-size,20px);flex:0 0 auto;fill:transparent;pointer-events:none;transform-origin:center;transform-box:fill-box;transition:fill .16s ease}.mtt-collection-heart::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle,currentColor 1.4px,transparent 1.8px) 50% 2px/4px 4px,radial-gradient(circle,currentColor 1.4px,transparent 1.8px) 50% calc(100% - 2px)/4px 4px,radial-gradient(circle,currentColor 1.4px,transparent 1.8px) 2px 50%/4px 4px,radial-gradient(circle,currentColor 1.4px,transparent 1.8px) calc(100% - 2px) 50%/4px 4px;background-repeat:no-repeat}.mtt-collection-heart[aria-pressed=true] svg{fill:currentColor}
.mtt-collection-launcher--header{position:relative;width:44px;padding:.5rem}.mtt-collection-launcher--header .mtt-collection-launcher__label{display:none}.mtt-collection-launcher--header [data-collection-count]{position:absolute;top:1px;right:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:17px;height:17px;padding:0 3px;border-radius:999px;background:var(--mtt-collection-badge-background,#292421);color:var(--mtt-collection-badge-color,#fff);font-family:inherit;font-size:10px;font-weight:600;line-height:1;letter-spacing:0}.mtt-collection-launcher [data-collection-count][hidden]{display:none}.mtt-collection-launcher--floating{position:fixed;right:1rem;bottom:1rem;z-index:90;background:var(--mtt-collection-background,#fff);border:1px solid currentColor;border-radius:4px;box-shadow:0 2px 10px #0002}
.mtt-collection-heart:focus-visible,.mtt-collection-launcher:focus-visible,.mtt-post-email:focus-visible,.mtt-collection button:focus-visible,.mtt-collection-dialog button:focus-visible,.mtt-collection a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.mtt-collection-heart:disabled,.mtt-collection-launcher:disabled,.mtt-post-email:disabled{visibility:hidden}
.mtt-collection-dialog{border:1px solid var(--mtt-collection-accent,#292421);border-radius:0;padding:clamp(1rem,3vw,2.5rem);width:min(960px,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);overflow:auto;background:var(--mtt-collection-background,#fff);color:var(--mtt-collection-text,#292421);box-sizing:border-box}
.mtt-collection-dialog::backdrop{background:#0008}.mtt-collection-email-dialog{width:min(560px,calc(100vw - 2rem))}.mtt-collection-close{position:sticky;top:0;float:right;background:var(--mtt-collection-background,#fff);font-size:1.5rem;z-index:3}
.mtt-collection-dialog .mtt-collection>h2{display:none}.mtt-collection__grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;list-style:none!important;margin:1rem 0!important;padding:0!important}
.mtt-collection-card{display:flex;flex-direction:column;min-width:0;border-bottom:1px solid #8885;padding-bottom:1rem}.mtt-collection-card>a{display:flex;flex-direction:column;color:inherit;text-decoration:none;gap:.35rem}.mtt-collection-card img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#fff}.mtt-collection-card__brand{font-size:.8em}.mtt-collection-card button{align-self:flex-start;background:none;border:0;text-decoration:underline;color:inherit;padding:.65rem 0;cursor:pointer;font:inherit;min-height:44px}
.mtt-collection__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.mtt-collection__actions button,[data-collection-more],[data-email-retry]{font:inherit;cursor:pointer;padding:.75rem 1rem;min-height:44px;border:1px solid currentColor;background:transparent;color:inherit}.mtt-collection__actions button:disabled{opacity:.5;cursor:default}
.mtt-collection-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mtt-collection [hidden],.mtt-collection-dialog [hidden]{display:none!important}.mtt-collection-dialog .wpforms-container{margin:1rem 0!important}.mtt-collection-editor{border:1px dashed currentColor;padding:1rem}.mtt-collection-card a{overflow-wrap:anywhere}
@media(max-width:640px){.mtt-collection__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mtt-collection-launcher--header .mtt-collection-launcher__label{display:none}.mtt-collection-dialog{padding:1rem}}
@media(prefers-reduced-motion:reduce){.mtt-collection-heart svg{transition:none}.mtt-collection-dialog *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.mtt-collection-notice{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%);z-index:10000;box-sizing:border-box;max-width:min(34rem,calc(100vw - 2rem));padding:1rem;background:#292421;color:#fff;border:1px solid #fff;box-shadow:0 2px 10px #0003}.mtt-collection-launcher [data-collection-count]{min-width:17px;font-variant-numeric:tabular-nums}

/* Pointer feedback is the saved state; keyboard navigation retains a visible ring. */
:where(.mtt-collection-heart,.mtt-collection-launcher,.mtt-post-email,.mtt-collection-close):focus:not(:focus-visible),:where(.mtt-collection,.mtt-collection-dialog) :is(button,a):focus:not(:focus-visible){outline:none;box-shadow:none}
.mtt-collection-heart:focus-visible,.mtt-collection-launcher:focus-visible,.mtt-post-email:focus-visible,.mtt-collection button:focus-visible,.mtt-collection-dialog :is(button,a,input,select,textarea):focus-visible,.mtt-collection a:focus-visible{outline:2px solid var(--mtt-collection-focus,currentColor);outline-offset:3px;box-shadow:none}

.mtt-collection__toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.25rem}.mtt-collection__intro{flex:1 1 14rem}.mtt-collection__toolbar .mtt-collection__actions{margin-top:0}.mtt-collection__note{margin-top:1.5rem;font-size:.8em}.mtt-collection__note summary{cursor:pointer;min-height:44px;padding:.75rem 0;box-sizing:border-box}.mtt-collection__note summary:focus-visible{outline:2px solid var(--mtt-collection-focus,currentColor);outline-offset:3px}.mtt-collection-back{font:inherit;cursor:pointer;min-height:44px;color:inherit;background:transparent;border:0}

.mtt-collection-email-dialog .wpforms-field-hidden{display:none!important}

/* Modal entry stays on the compositor, with no motion for readers who request it. */
@keyframes mtt-collection-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes mtt-collection-backdrop-enter{from{opacity:0}to{opacity:1}}
.mtt-collection-dialog[open]{animation:mtt-collection-enter .28s cubic-bezier(.2,.7,.3,1)}
.mtt-collection-dialog[open]::backdrop{animation:mtt-collection-backdrop-enter .28s ease-out}
.mtt-collection-launcher--floating{inset:auto 24px calc(24px + env(safe-area-inset-bottom)) auto;width:56px;height:56px;min-width:56px;min-height:56px;padding:0;border-radius:50%;border:0;background:var(--mtt-collection-floating-background,#292421);color:var(--mtt-collection-floating-color,#fff)}
.mtt-collection-launcher--floating .mtt-collection-launcher__label{display:none}
.mtt-collection-launcher--floating svg{width:24px;height:24px}
.mtt-collection-launcher--floating [data-collection-count]{position:absolute;top:-2px;right:-2px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:20px;height:20px;padding:0 4px;border-radius:999px;background:var(--mtt-collection-badge-background,#fff);color:var(--mtt-collection-badge-color,#292421);font:600 10px/1 sans-serif;letter-spacing:0}
.mtt-collection-launcher--floating[data-collection-side=left]{left:24px;right:auto}
.mtt-collection-launcher--floating[data-collection-level=top]{top:var(--mtt-collection-floating-top,24px);bottom:auto}
.mtt-collection-launcher--floating[data-collection-level=middle]{top:50%;bottom:auto;transform:translateY(-50%)}
/* Floating artwork never changes the save controls on individual products. */
.mtt-collection-launcher--floating[data-collection-icon^=scroll] svg{width:32px;height:36px}
.mtt-collection-launcher--floating[data-collection-style=standalone]{background:transparent;border:0;border-radius:0;box-shadow:none;color:var(--mtt-collection-floating-background,#292421);--mtt-collection-scroll-paper:var(--mtt-collection-floating-color,#fff)}
.mtt-collection-launcher--floating[data-collection-style=standalone] svg{width:32px;height:32px}
.mtt-collection-launcher--floating[data-collection-style=standalone][data-collection-icon^=scroll] svg{width:46px;height:52px}
.mtt-collection-launcher--floating[data-collection-style=standalone] [data-collection-count]{background:var(--mtt-collection-floating-background,#292421);color:var(--mtt-collection-floating-color,#fff)}
@media(forced-colors:active){.mtt-collection-launcher--floating[data-collection-style=standalone]{color:ButtonText;--mtt-collection-scroll-paper:Canvas}}
@media(prefers-reduced-motion:reduce){.mtt-collection-dialog[open],.mtt-collection-dialog[open]::backdrop{animation:none}}

.mtt-collection__note summary:focus:not(:focus-visible){outline:none;box-shadow:none}

.mtt-collection__note{box-sizing:border-box;overflow:clip}

/* Reserve image space, with a quiet placeholder and a decoded-image fade. */
.mtt-collection-card__media{display:block;overflow:hidden;background:var(--mtt-collection-image-placeholder,#8881)}
.mtt-collection-card .mtt-collection-card__media img{opacity:0;transition:opacity .24s ease,filter .18s ease}
.mtt-collection-card__media.is-ready{background:transparent}
.mtt-collection-card .mtt-collection-card__media.is-ready img{opacity:1}
.mtt-collection-card .mtt-collection-card__media:not(.is-ready) img{opacity:0}
.mtt-collection-card--placeholder{pointer-events:none}
.mtt-collection-card--placeholder .mtt-collection-card__brand,.mtt-collection-card__placeholder-line{background:var(--mtt-collection-image-placeholder,#8881);width:65%;align-self:center}
.mtt-collection-card__placeholder-line{width:85%}
.mtt-collection-card__placeholder-remove{min-height:44px;margin-top:8px}
@media(prefers-reduced-motion:reduce){.mtt-collection-card .mtt-collection-card__media img{transition:none}}

.mtt-collection__pagination{text-align:center;margin-top:1.5rem}.mtt-collection__pagination [data-collection-progress]{font-size:.8em;margin:.5rem 0 1rem}.mtt-collection__pagination button{overflow-anchor:none}.mtt-collection__pagination button:disabled{opacity:.5;cursor:wait}
.mtt-collection__browse{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:underline;text-underline-offset:.2em}.mtt-collection__browse:hover{text-decoration-thickness:2px}

/* The complete collection header stays outside the scrolling finds. */
#mtt-collection-dialog[open]{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(0,1fr);gap:1.25rem 1rem;overflow:hidden}
#mtt-collection-dialog>h2{grid-column:1;grid-row:1;align-self:center;min-width:0;margin:0}
#mtt-collection-dialog>.mtt-collection-close{grid-column:2;grid-row:1;align-self:start;justify-self:end;position:static;float:none;margin:0}
#mtt-collection-dialog>.mtt-collection{grid-column:1/-1;grid-row:2;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;padding:6px;margin:-6px}
#mtt-collection-dialog .mtt-collection__toolbar{flex-shrink:0}
#mtt-collection-dialog .mtt-collection__body{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:none;padding:6px;margin:-6px}
#mtt-collection-dialog .mtt-collection__body::-webkit-scrollbar{display:none;width:0;height:0}

/* On phones, give the finds the full panel height while retaining a reachable close control. */
@media(max-width:640px){
#mtt-collection-dialog[open]{display:block;overflow:auto}
#mtt-collection-dialog>h2{margin:0 48px 20px 0}
#mtt-collection-dialog>.mtt-collection-close{position:sticky;top:0;float:right;margin:-8px -8px 0 0}
#mtt-collection-dialog>.mtt-collection{display:block;clear:both;overflow:visible;min-height:auto;padding:0;margin:0}
#mtt-collection-dialog .mtt-collection__body{overflow:visible;min-height:auto;padding:0;margin:0}
}


/* Repeated removals must not select the button label or nearby card text. */
.mtt-collection-card [data-collection-remove]{-webkit-user-select:none;user-select:none}
/* Keep keyboard focus visible when a theme suppresses native button outlines. */
.mtt-collection-card [data-collection-remove]:focus-visible{outline:2px solid var(--mtt-collection-focus,currentColor)!important;outline-offset:3px}

/* The illustrated option is a bundled transparent asset, loaded only when selected. */
.mtt-collection-launcher--floating:is([data-collection-icon=scroll-illustrated],[data-collection-icon=custom]) img{display:block;width:44px;height:44px;object-fit:contain;pointer-events:none}
.mtt-collection-launcher--floating:is([data-collection-icon=scroll-illustrated],[data-collection-icon=custom])[data-collection-style=standalone] img{width:56px;height:56px}

/* Keep browser persistence visible beside the email controls and outside the product scroller. */
.mtt-collection .mtt-collection__persistence{margin:.25rem 0 0;max-width:32rem;font-size:.875rem;line-height:1.6}

/* Optional site-authored next step; themes retain typography, colors and button states. */
.mtt-collection__cta{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #8885}.mtt-collection__cta-copy{flex:1 1 16rem;min-width:0}.mtt-collection__cta h3,.mtt-collection__cta p{margin:0 0 .5rem}.mtt-collection__cta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;overflow-wrap:anywhere}.mtt-collection__cta .wp-block-buttons{margin:0}

/* Content delivery can address one card independently of the full list. */
.mtt-collection-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;margin-top:.5rem}.mtt-collection-card__actions button{min-height:44px;max-width:100%;font:inherit;font-size:.8em;color:inherit;background:transparent;border:0;padding:.5rem 0;text-decoration:underline;text-underline-offset:.2em}.mtt-collection-email-item{padding:.75rem 0;border-block:1px solid #8884;font-weight:600;overflow-wrap:anywhere}

/* Keep keyboard focus visible when a theme resets native button outlines. */
.mtt-collection-heart:focus-visible{outline:2px solid var(--mtt-collection-focus,currentColor)!important;outline-offset:3px}
