/* Original, lightweight feedback inspired by Kinetics. All values use project tokens. */
[data-tooltip]{position:relative}
[data-tooltip]::after{content:attr(data-tooltip);position:absolute;bottom:calc(var(--extent-full) + var(--space-2xs));inset-inline-start:var(--extent-half);transform:translateX(calc(var(--extent-half)*var(--number-negative-one))) translateY(var(--space-2xs));padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-control);background:var(--color-dark);color:var(--color-light);border:var(--border-width) solid var(--neutral-600);font:var(--type-caption)/var(--leading-label) var(--font-body);white-space:nowrap;pointer-events:none;opacity:var(--opacity-hidden);visibility:hidden;z-index:var(--z-dialog);transition:opacity var(--motion-fast) var(--ease-ui),transform var(--motion-fast) var(--ease-ui),visibility var(--motion-fast)}
[data-tooltip]:focus-visible::after{opacity:var(--opacity-visible);visibility:visible;transform:translateX(calc(var(--extent-half)*var(--number-negative-one))) translateY(var(--length-zero))}
.language-switch[data-tooltip]::after{inset-inline-start:auto;right:var(--length-zero);transform:translateY(var(--space-2xs))}.language-switch[data-tooltip]:focus-visible::after{transform:translateY(var(--length-zero))}
@media(hover:hover) and (pointer:fine){
 [data-tooltip]:hover::after{opacity:var(--opacity-visible);visibility:visible;transform:translateX(calc(var(--extent-half)*var(--number-negative-one))) translateY(var(--length-zero))}
 .language-switch[data-tooltip]:hover::after{transform:translateY(var(--length-zero))}
 .nav-link .icon{transition:transform var(--motion-fast) var(--ease-ui)}.nav-link:hover .icon{transform:translateX(var(--space-3xs))}
 .narrative-media{transition:border-color var(--motion-fast) var(--ease-ui)}.narrative-media:hover{border-color:var(--cms-action)}
}
@media(prefers-reduced-motion:no-preference){
 .button,.icon-button,.narrative-toolbar button,.narrative-insert-menu button{transition:transform var(--motion-fast) var(--ease-ui),background var(--motion-fast) var(--ease-ui),border-color var(--motion-fast) var(--ease-ui)}
 .button:active,.icon-button:active,.narrative-toolbar button:active,.narrative-insert-menu button:active{transform:scale(calc(var(--number-one)/var(--motion-hover-scale)))}
 dialog[open]{animation:none;transform:none}
 dialog[open]>:not(.custom-cursor){animation:studio-pop var(--motion-dialog) var(--ease-enter) both}
 .toast:not([hidden]){animation:studio-toast var(--motion-menu) var(--nav-bounce-ease) both}
 @keyframes studio-pop{from{opacity:var(--opacity-hidden);transform:translateY(var(--space-s)) scale(var(--glow-scale-low))}to{opacity:var(--opacity-visible);transform:none}}
 @keyframes studio-toast{from{opacity:var(--opacity-hidden);transform:translateY(var(--space-s))}to{opacity:var(--opacity-visible);transform:none}}
}
@media(prefers-reduced-motion:reduce){[data-tooltip]::after{transition:none}}

.kinetic-measure{position:fixed;visibility:hidden;pointer-events:none;width:var(--space-3xs);height:var(--length-zero)}
.kinetic-face{display:inline-flex;align-items:center;justify-content:center;gap:inherit;transition:transform var(--motion-fast) var(--ease-enter);pointer-events:none}
.button,.modal-actions button,.access-form button[type=submit]{position:relative;isolation:isolate}
.kinetic-wash{position:absolute;inset:var(--length-zero);overflow:hidden;border-radius:inherit;pointer-events:none}
.kinetic-ripple{position:absolute;border-radius:var(--radius-pill);background:currentColor;pointer-events:none}
.nav-link{position:relative;isolation:isolate}
.nav-link>span{position:relative;z-index:var(--z-content)}
.nav-link[aria-current=page]{background:transparent}
.nav-link[aria-current=page]::before{content:'';position:absolute;inset:var(--length-zero);border-radius:inherit;background:var(--cms-action);z-index:var(--z-background);pointer-events:none}
.media-card{position:relative;overflow:hidden}
.media-selection-check{position:absolute;top:var(--space-xs);right:var(--space-xs);display:grid;place-items:center;width:var(--control-min);height:var(--control-min);border-radius:var(--cms-control-radius);background:var(--cms-action);color:var(--cms-action-text);opacity:var(--opacity-hidden);transform:scale(var(--glow-scale-low));pointer-events:none}
.media-card[aria-pressed=true] .media-selection-check{opacity:var(--opacity-visible);transform:none}
.media-card[aria-pressed=true]{border-color:var(--cms-action)}
.inspector-group summary>[data-icon]:last-child{transition:transform var(--motion-menu) var(--nav-bounce-ease)}
.inspector-group[open] summary>[data-icon]:last-child{transform:rotate(var(--motion-half-turn))}
.project-card .card-details h3{position:relative;display:inline-block}
.project-card .card-details h3::after{content:'';position:absolute;inset-inline:var(--length-zero);bottom:calc(var(--space-3xs)*var(--number-negative-one));height:var(--border-width);background:var(--color-accent);transform:scaleX(var(--number-zero));transform-origin:left;pointer-events:none}
@media(prefers-reduced-motion:no-preference){
 .media-selection-check{transition:opacity var(--motion-fast) var(--ease-ui),transform var(--motion-menu) var(--nav-bounce-ease)}
 .project-card .card-details h3::after{transition:transform var(--nav-pill-duration) var(--ease-enter)}
 .project-card .card-art{transition:transform var(--motion-menu) var(--ease-enter)}
 .media-card img{transition:transform var(--motion-menu) var(--ease-enter)}
 @supports(interpolate-size:allow-keywords) and (transition-behavior:allow-discrete){
  .inspector-group,.authorship{interpolate-size:allow-keywords}
  .inspector-group::details-content,.authorship::details-content{block-size:var(--length-zero);overflow:clip;transition:block-size var(--motion-menu) var(--ease-enter),content-visibility var(--motion-menu) allow-discrete}
  .inspector-group[open]::details-content,.authorship[open]::details-content{block-size:auto}
 }
}
@media(hover:hover) and (pointer:fine){
 .project-card:hover .card-details h3::after{transform:scaleX(var(--number-one))}
 .project-card:hover .card-art{transform:translateY(calc(var(--space-3xs)*var(--number-negative-one)))}
 .media-card:hover img{transform:scale(var(--motion-hover-scale))}
}
.project-card:focus-visible .card-details h3::after{transform:scaleX(var(--number-one))}
@media(prefers-reduced-motion:reduce){.kinetic-face,.media-selection-check,.inspector-group summary>[data-icon]:last-child{transition:none}.project-card:hover .card-art,.media-card:hover img{transform:none}}
body.motion-paused .kinetic-face,body.motion-paused .project-card .card-art,body.motion-paused .project-card .card-art img,body.motion-paused .project-card .card-details h3::after{transition:none}
body.motion-paused .project-card:hover .card-art,body.motion-paused .project-card:hover .card-art img{transform:none}
