/* Motion is local to an interaction; collection content remains usable immediately. */
.filters { position:relative; isolation:isolate; }
.filter { position:relative; z-index:1; transition:color 150ms,border-color 150ms,scale 110ms; }
.filter-indicator { display:none; position:absolute; z-index:0; border-radius:50px; background:var(--gold); pointer-events:none; transform-origin:center; }
.has-filter-indicator .filter-indicator { display:block; }
.has-filter-indicator .filter[data-base][aria-pressed=true] { background:transparent; border-color:transparent; }
.motion-card-exit { position:fixed!important; z-index:5; margin:0; pointer-events:none!important; transition:none!important; }
.glass-glint { stroke:#fff3d5; stroke-width:1.05; stroke-dasharray:15 100; stroke-dashoffset:115; fill:none; opacity:0; }
.motion-shared { position:fixed!important; z-index:20; margin:0!important; padding:0!important; max-width:none!important; max-height:none!important; pointer-events:none!important; transform-origin:center; user-select:none; }
.motion-plane { z-index:0; border:1px solid; overflow:hidden; }
.recipe-carousel,.bottle-viewer-content { position:relative; z-index:1; }
.motion-shared-title { font-family:Georgia,serif; font-weight:400; overflow-wrap:anywhere; }
.motion-shared-art { display:block; object-fit:contain; overflow:visible; }
.motion-surface-muted { background:transparent!important; border-color:transparent!important; box-shadow:none!important; -webkit-backdrop-filter:none!important; backdrop-filter:none!important; }
#bottle-viewer.motion-surface-muted { overflow:visible; }

@media(prefers-reduced-motion:no-preference) {
  /* Separate scale leaves grid positioning and carousel transforms independent. */
  .card { transition:transform .2s,scale 110ms; }
  .card:active { scale:.982; }
  .filter-toggle,.show-results,.reset-filters,.close { transition:scale 110ms,background 180ms,border-color 180ms; }
  .recipe-navigation-button { transition:scale 110ms,color 180ms,opacity 180ms; }
  .recipe-navigation-button:not([aria-disabled=true]):active,.filter:active,.filter-toggle:active,
  .show-results:active,.reset-filters:active,.close:active { scale:.95; }
  .card:focus-visible .glass-glint,.detail-top .glass-glint { animation:glass-contour-glint 650ms ease-out 70ms both; }
  #recipe[open]::backdrop,#bottle-viewer[open]::backdrop { animation:dialog-shade-in 220ms ease both; }
  #recipe.motion-closing::backdrop,#bottle-viewer.motion-closing::backdrop { animation:dialog-shade-out 200ms ease both; }
  @supports (appearance:base-select) and selector(select::picker(select)) {
    .hotel-control select::picker-icon { transition:rotate 160ms ease; }
    .hotel-control select::picker(select) { opacity:0; translate:0 -5px; transition:opacity 150ms ease,translate 180ms cubic-bezier(.22,.75,.25,1),display 180ms allow-discrete,overlay 180ms allow-discrete; }
    .hotel-control select:open::picker(select) { opacity:1; translate:0 0; }
    @starting-style { .hotel-control select:open::picker(select) { opacity:0; translate:0 -5px; } }
  }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .card:hover .glass-glint { animation:glass-contour-glint 650ms ease-out 70ms both; }
}
@keyframes glass-contour-glint {
  0% { stroke-dashoffset:115; opacity:0; }
  18% { opacity:.8; }
  78% { opacity:.5; }
  100% { stroke-dashoffset:-15; opacity:0; }
}
@keyframes dialog-shade-in { from { opacity:0; } to { opacity:1; } }
@keyframes dialog-shade-out { from { opacity:1; } to { opacity:0; } }
@media(prefers-reduced-motion:reduce), (forced-colors:active) {
  .glass-glint { display:none; }
  .motion-shared,.motion-card-exit { display:none!important; }
  #recipe::backdrop,#bottle-viewer::backdrop { animation:none; }
}
@media(forced-colors:active) {
  .filter-indicator { display:none!important; }
  .has-filter-indicator .filter[data-base][aria-pressed=true] { background:Highlight; border-color:Highlight; color:HighlightText; }
}
