/* Companion controls: reuse the selected catalogue navigation/quiet-action grammar. */
.aku-control{--control-ink:var(--aku-ink);--control-copy:var(--aku-ink-2);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;height:2.5rem;min-height:2.5rem;width:auto;max-width:100%;padding:0 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--control-ink);font:600 1rem/1.25 var(--aku-font-body);text-align:center;white-space:nowrap;cursor:pointer;opacity:1;transition:translate .18s,box-shadow .18s,background .18s,border-color .18s}
.aku-control:not(:disabled)::after{content:'';position:absolute;pointer-events:none;left:35%;bottom:4px;width:25%;height:1px;background:currentColor;opacity:0;animation:akuControlGlint 6s ease-in-out infinite}
.aku-control:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){translate:0 -2px}
.aku-control:focus-visible{outline:3px solid var(--aku-ink);outline-offset:4px}
.aku-control--nav{border-color:var(--aku-ink-2);border-bottom-width:3px;border-radius:11px;background:linear-gradient(175deg,var(--aku-paper),var(--aku-day));box-shadow:0 3px 0 color-mix(in srgb,var(--aku-night) 28%,transparent)}
.aku-control--nav:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){box-shadow:0 5px 0 color-mix(in srgb,var(--aku-night) 28%,transparent);background:linear-gradient(175deg,var(--aku-paper),color-mix(in srgb,var(--aku-day) 70%,var(--aku-primary)))}
.aku-control--nav:is([aria-pressed=true],[aria-selected=true]){background:linear-gradient(175deg,color-mix(in srgb,var(--aku-primary) 72%,var(--aku-paper)),var(--aku-primary));color:var(--aku-primary-ink);box-shadow:0 3px 0 var(--aku-ink-2)}
.aku-control--nav:active:not(:disabled){translate:0 1px}
.aku-control--nav .dc-sprite{transition:rotate .18s,translate .18s}
.aku-control--nav:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled) .dc-sprite{rotate:-7deg;translate:0 -1px}
.aku-control--quiet{color:var(--control-copy);padding-inline:6px;font-weight:500}
.aku-control--quiet:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){color:var(--control-ink);text-decoration:underline;text-underline-offset:5px}
.aku-control--filter{padding-inline:3px;border-radius:0;border-bottom-width:2px;color:var(--aku-ink-2);font-weight:500}
.aku-control--filter:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){border-bottom-color:var(--aku-ink-2);color:var(--aku-ink)}
.aku-control--filter[aria-pressed=true]{border-bottom-color:var(--aku-ink);color:var(--aku-ink);font-weight:600}
.aku-control-check{display:grid;place-items:center;flex:none;width:16px;height:16px;border:1px solid currentColor;border-radius:4px;font-size:.8125rem;line-height:1;color:var(--aku-ink)}
.aku-control-check::before{content:'✓';visibility:hidden}
[aria-pressed=true]>.aku-control-check{background:var(--aku-primary);color:var(--aku-primary-ink)}
[aria-pressed=true]>.aku-control-check::before{visibility:visible}
.aku-control--sort{border-radius:0;border-bottom-width:2px;border-bottom-color:var(--aku-ink-2);padding-inline:3px;font-weight:500}
.aku-control--sort:is(:hover,:focus-visible,[data-preview-hover],[aria-pressed=true]):not(:disabled){border-bottom-color:var(--aku-ink);box-shadow:0 2px 0 color-mix(in srgb,var(--aku-primary) 75%,transparent);color:var(--aku-ink)}
.aku-control--disclosure{border-color:var(--aku-ink-2);background:var(--aku-paper);font-weight:500}
.aku-control--disclosure:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){background:color-mix(in srgb,var(--aku-paper) 75%,var(--aku-accent));box-shadow:0 3px 0 color-mix(in srgb,var(--aku-ink) 18%,transparent)}
.aku-control--disclosure[aria-expanded=true]{background:color-mix(in srgb,var(--aku-paper) 70%,var(--aku-accent));border-color:var(--aku-ink);font-weight:600}
.aku-control--danger{color:var(--aku-bad-ink);font-weight:500;padding-inline:6px}
.aku-control--danger:is(:hover,:focus-visible,[data-preview-hover]):not(:disabled){text-decoration:underline;text-underline-offset:5px;background:color-mix(in srgb,var(--aku-paper) 90%,var(--aku-bad))}
.aku-control:disabled{color:color-mix(in srgb,var(--aku-ink-2) 85%,var(--aku-paper));background:color-mix(in srgb,var(--aku-day) 70%,var(--aku-paper));border:1px dashed var(--aku-ink-2);box-shadow:none;translate:none;cursor:not-allowed;opacity:1}
.aku-control:disabled .dc-sprite{filter:grayscale(1)}
.aku-control:disabled .aku-control-check{background:transparent;color:var(--aku-ink-2)}
.aku-control[data-offscreen]::after,html[data-motion=paused] .aku-control::after{animation-play-state:paused}
.aku-cta[data-offscreen],.aku-cta[data-offscreen]::before,.aku-cta[data-offscreen]::after,.aku-cta[data-offscreen] .aku-cta-ar span{animation-play-state:paused!important}
@keyframes akuControlGlint{0%,58%,100%{opacity:0;translate:-10px 0}76%{opacity:.5;translate:10px 0}}
@media(prefers-reduced-motion:reduce){.aku-control,.aku-control::after{animation:none!important;transition:none!important}}

.aku-cta:is(:disabled,[aria-disabled=true]){--c:var(--aku-day);--c2:var(--aku-paper);--ink:var(--aku-ink-2);--edge:var(--aku-ink-2);pointer-events:none;cursor:not-allowed}
.aku-cta:is(:disabled,[aria-disabled=true])::before,.aku-cta:is(:disabled,[aria-disabled=true])::after{animation:none!important;display:none!important}
.aku-cta:is(:disabled,[aria-disabled=true]) .aku-cta-ic{filter:grayscale(1)}

.aku-control[hidden]{display:none!important}
