/* Bedside accessibility polish for Spectra Viewer.
   Adds small, low-risk affordances for iPad, keyboard, Voice Control, and eye-tracking workflows. */

.sv-skipLink{
  position:fixed;
  inset-block-start:var(--sp-2,.5rem);
  inset-inline-start:var(--sp-2,.5rem);
  z-index:1000;
  transform:translateY(calc(-100% - var(--sp-3,.75rem)));
  padding:var(--sp-2,.5rem) var(--sp-3,1rem);
  border:var(--sp-border-w-1,1px) solid color-mix(in srgb,var(--sv-link-accent),var(--sp-border) 35%);
  border-radius:999px;
  background:color-mix(in srgb,var(--sp-bg),var(--sv-blue) 8%);
  color:var(--sv-link-accent-hover);
  box-shadow:var(--sp-shadow-3), inset 0 var(--sp-border-w-1,1px) 0 var(--sv-line-light-strong);
  text-decoration:none;
  transition:transform var(--sp-duration-2,.18s) var(--sp-ease-standard,ease);
}

.sv-skipLink:focus,
.sv-skipLink:focus-visible{
  transform:translateY(0);
  outline:var(--sp-focus-ring-w,3px) solid color-mix(in srgb,var(--sv-link-accent),transparent 64%);
  outline-offset:var(--sp-focus-ring-offset,3px);
}

.sp-btn:focus-visible,
.sp-input:focus-visible,
.sv-fileBtn:focus-visible,
.sv-fileAction:focus-visible,
.sv-statusToggle:focus-visible,
.sv-drawerSectionToggle:focus-visible,
.demo-footer__link:focus-visible,
.sv-metaLink:focus-visible{
  outline:var(--sp-focus-ring-w,3px) solid color-mix(in srgb,var(--sv-link-accent),transparent 64%);
  outline-offset:var(--sp-focus-ring-offset,3px);
}

#browser:target,
#preview:target,
#assistantTray:target{
  scroll-margin-block-start:var(--sp-10,5rem);
}

@media (pointer:coarse){
  .sv-drawerBody .sp-btn,
  .sv-previewActionRow .sp-btn,
  .sv-areaBtn,
  .sv-statusToggle,
  .sv-fileBtn,
  .sv-fileAction,
  .sv-drawerSectionToggle,
  .demo-footer__link{
    min-height:var(--sp-touch-target,44px);
  }

  .sv-fileAction{
    min-inline-size:var(--sp-touch-target,44px);
  }

  .sp-input,
  textarea{
    min-height:var(--sp-touch-target,44px);
    font-size:var(--sp-mobile-input-fs,16px);
  }
}

@media/* --sp-bp-md: 52rem */
 (max-width:52rem){
  .sv-previewMeta,
  .sv-browserTitlePath{
    line-height:var(--sp-lh-2,1.35);
  }
}

@media (prefers-reduced-motion:reduce){
  *,
  *::before,
  *::after{
    animation-duration:var(--sp-duration-instant,.001ms)!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:var(--sp-duration-instant,.001ms)!important;
  }
}
