/* Forms & Standing / Premium Button + Typography System R29
   Scope: current premium-r13.html only. Additive, after R28.
   Headline sizes and paragraph sizes deliberately unchanged.
   Preserve clear roles: filled CTA, glass secondary CTA, text link, icon control.
*/
:root{
 --fs29-control-font:var(--fs11-sans);
 --fs29-control-text:var(--fs11-ink);
 --fs29-hover-text:#435b4b;
 --fs29-focus:rgba(31,51,39,.80);
 --fs29-secondary-hover:rgba(255,255,252,.31);
 --fs29-tab-hover:rgba(245,246,240,.28);
 --fs29-primary-shadow:0 15px 28px -16px rgba(23,36,26,.47);
 --fs29-text-underline:rgba(46,62,50,.42);
}
html[data-theme="dark"]{
 --fs29-hover-text:#fdf9ec;
 --fs29-focus:rgba(241,244,230,.9);
 --fs29-secondary-hover:rgba(225,232,223,.13);
 --fs29-tab-hover:rgba(234,240,230,.12);
 --fs29-primary-shadow:0 15px 32px -17px rgba(0,0,0,.65);
 --fs29-text-underline:rgba(239,242,233,.43);
}
/* A cohesive, sans-serif control alphabet. No changes to editorial serif titles. */
.fs11-button,
.fs13-name-lookup button[type="submit"],
.fs13-hero-links a,
.fs11-card a,
.fs11-header .fs11-nav a,
.fs11-header .fs25-desktop-logout,
.fs11-nav-mobile a,
.fs11-nav-mobile .fs25-mobile-logout,
.fs11-workspace-sidebar button,
.fs11-faq summary,
.fs14-select-trigger,
.fs14-option{
  font-family:var(--fs29-control-font)!important;
  font-weight:600!important;
  letter-spacing:0!important;
}
/* Primary buttons: consistent 14/600, no heavy outline, restrained depth. */
.fs11-button,
.fs13-name-lookup button[type="submit"]{
  font-size:14px!important;
  line-height:1.3!important;
  border-radius:13px!important;
  border:0!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease,background .18s ease!important;
}
.fs11-button:hover,
.fs13-name-lookup button[type="submit"]:hover{
  transform:translateY(-2px)!important;
  filter:brightness(1.055)!important;
  box-shadow:var(--fs29-primary-shadow)!important;
}
.fs11-button:active,
.fs13-name-lookup button[type="submit"]:active{
  transform:translateY(0) scale(.985)!important;
  filter:brightness(.97)!important;
  box-shadow:0 4px 10px -8px rgba(15,27,19,.4)!important;
}
.fs11-button:focus-visible,
.fs13-name-lookup button[type="submit"]:focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:3px!important;
}
/* Secondary glass button gets same motion rhythm, not the filled CTA color. */
.fs11-button--outline{
  color:var(--fs11-ink)!important;
  background:var(--fs18-glass-strong)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  backdrop-filter:blur(12px)!important;
}
.fs11-button--outline:hover{
  background:var(--fs29-secondary-hover)!important;
  filter:none!important;
}
/* Text controls: same weight, hover underline and subtle lift.
   The links remain LINKS rather than becoming more button tiles. */
.fs13-hero-links a,
.fs11-card a,
.fs11-header .fs11-nav a,
.fs11-header .fs25-desktop-logout,
.fs11-nav-mobile a,
.fs11-nav-mobile .fs25-mobile-logout{
  color:var(--fs11-ink)!important;
  transition:color .18s ease,opacity .18s ease,text-decoration-color .18s ease,transform .18s ease!important;
}
.fs13-hero-links a,
.fs11-card a{
  font-size:14px!important;
  line-height:1.4!important;
  text-decoration:underline!important;
  text-decoration-color:var(--fs29-text-underline)!important;
  text-underline-offset:5px!important;
  text-decoration-thickness:1px!important;
}
.fs13-hero-links a:hover,
.fs11-card a:hover{
  color:var(--fs29-hover-text)!important;
  text-decoration-color:currentColor!important;
  text-decoration-thickness:2px!important;
  transform:translateY(-1px);
}
.fs11-header .fs11-nav a{
  font-size:13.5px!important;
  line-height:1.35!important;
  text-decoration:underline!important;
  text-decoration-color:transparent!important;
  text-underline-offset:7px;
  text-decoration-thickness:1px;
}
.fs11-header .fs11-nav a:hover{
  color:var(--fs29-hover-text)!important;
  text-decoration-color:currentColor!important;
}
.fs11-header .fs25-desktop-logout{
  font-size:14px!important;
  line-height:1.4!important;
  padding-inline:8px!important;
  text-decoration:underline!important;
  text-decoration-color:transparent!important;
  text-underline-offset:5px;
}
.fs11-header .fs25-desktop-logout:hover{
  color:var(--fs29-hover-text)!important;
  text-decoration-color:currentColor!important;
}
/* Form choices remain compact; larger touch areas without changing search height. */
.fs14-select-trigger{
  transition:background-color .18s ease,color .18s ease!important;
  border-radius:8px!important;
}
.fs14-select-trigger:hover{
  background-color:var(--fs29-secondary-hover)!important;
  color:var(--fs29-hover-text)!important;
}
.fs14-option:hover,
.fs14-option[data-active="true"]{
  background:var(--fs29-tab-hover)!important;
}
.fs14-select-trigger:focus-visible,.fs14-option:focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:2px!important;
}
/* FAQ summaries have intentional quiet hover; no extra inner tiles. */
.fs11-faq summary{
  font-size:16px!important;
  font-weight:600!important;
  transition:color .18s ease!important;
}
.fs11-faq summary:hover{color:var(--fs29-hover-text)!important}
.fs11-faq summary::after{
  transition:opacity .18s ease,transform .18s ease!important;
}
.fs11-faq summary:hover::after{
  opacity:.70;
  transform:scale(1.12);
}
.fs11-faq summary:focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:3px!important;
  border-radius:8px;
}
/* Workspace navigation: same 13/600 text weight at normal/hover/selected,
   avoiding a layout jump from font weight changes. */
.fs11-workspace-sidebar button{
  font-size:13px!important;
  font-weight:600!important;
  line-height:1.45!important;
  transition:background-color .18s ease,color .18s ease,transform .18s ease!important;
}
.fs11-workspace-sidebar button:hover{
  color:var(--fs29-hover-text)!important;
  background:var(--fs29-tab-hover)!important;
  transform:translateX(2px);
}
.fs11-workspace-sidebar button[aria-current="page"]{font-weight:600!important}
.fs11-workspace-sidebar button:focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:2px!important;
}
/* Preserve the R28 icon-only theme appearance. Only its icon animates. */
.fs11-header .fs27-theme::after{
  transition:opacity .18s ease,transform .18s ease!important;
}
.fs11-header .fs27-theme:hover::after{
  opacity:.72!important;
  transform:translate(-50%,-50%) scale(1.08)!important;
}
/* Menu / touch navigation; nothing intrusive on the mobile hero. */
.fs11-menu{transition:filter .18s ease,transform .18s ease!important}
.fs11-menu:hover{filter:brightness(1.07)!important}
.fs11-menu:active{transform:scale(.97)!important}
.fs11-menu:focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:2px!important;
}
.fs11-nav-mobile a,.fs11-nav-mobile .fs25-mobile-logout{
  font-size:14px!important;
  line-height:1.45!important;
  min-height:44px;
  border-radius:8px;
}
.fs11-nav-mobile a:hover,.fs11-nav-mobile .fs25-mobile-logout:hover{
  color:var(--fs29-hover-text)!important;
  background:var(--fs29-tab-hover)!important;
}
:where(.fs13-hero-links a,.fs11-card a,.fs11-nav a,.fs25-desktop-logout,.fs25-mobile-logout,.fs11-nav-mobile a):focus-visible{
  outline:2px solid var(--fs29-focus)!important;
  outline-offset:3px!important;
  border-radius:5px;
}
@media(max-width:1100px){
  .fs11-header .fs11-nav a{font-size:12.5px!important}
}
@media(max-width:600px){
  .fs11-card a,.fs13-hero-links a{font-size:14px!important}
  .fs11-faq summary{font-size:15px!important}
  /* The 109px workspace sidebar needs its original compact geometry. */
  .fs11-workspace-sidebar button{font-size:12px!important}
  .fs14-select-trigger{font-size:12px!important}
}
@media(max-width:390px){.fs14-select-trigger{font-size:11.5px!important}}
@media(hover:none){
  /* No simulated hover motion on touch devices. */
  .fs11-button:hover,.fs13-name-lookup button[type="submit"]:hover,.fs11-card a:hover{
    transform:none!important;
  }
  .fs11-workspace-sidebar button:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .fs11-button,.fs13-name-lookup button[type="submit"],.fs11-faq summary,.fs11-faq summary::after,
  .fs11-menu,.fs14-select-trigger,.fs11-workspace-sidebar button,.fs11-header .fs27-theme::after,
  .fs13-hero-links a,.fs11-card a,.fs11-header .fs11-nav a{
    transition:none!important;
  }
}

/* Workspace metadata: the former 9px mobile label was unnecessarily tiny. */
.fs11-workspace-preview-label{
  font-family:var(--fs11-sans)!important;
  font-size:11px!important;
  line-height:1.45!important;
  font-weight:600!important;
  letter-spacing:0!important;
}
@media(max-width:600px){
  .fs11-workspace-preview-label{
    font-size:10.5px!important;
    gap:5px!important;
  }
}
