/* Genyleap experience system v1 — 2026-09-24
   Boski-inspired principles: calm motion, stronger typography, dark green-black primary actions,
   and low-noise card depth. Purposefully adapted to Genyleap rather than copied. */
:root{
  --gl-action:#08130f;
  --gl-action-hover:#0d2118;
  --gl-action-text:#f4fff9;
  --gl-action-line:#1d3d2f;
  --gl-card-shadow:0 10px 30px rgba(5,18,13,.055),0 1px 1px rgba(5,18,13,.025);
  --gl-card-shadow-hover:0 18px 48px rgba(5,18,13,.09),0 2px 6px rgba(5,18,13,.035);
  --gl-motion-ease:cubic-bezier(.16,1,.3,1);
  --gl-motion-fast:260ms;
}
html[data-theme="dark"]{
  --gl-action:#0d1b15;
  --gl-action-hover:#12271d;
  --gl-action-line:#28523f;
  --gl-card-shadow:0 12px 34px rgba(0,0,0,.22);
  --gl-card-shadow-hover:0 20px 54px rgba(0,0,0,.30);
}

body{
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Cleaner public type scale: large, but no longer oversized for its own sake. */
:where(.hero h1,.page-intro h1,.product-hero h1,.apple-display,.status-hero h1,.account-hero-copy h1){
  font-size:clamp(3.15rem,6vw,5.85rem)!important;
  line-height:.98!important;
  font-weight:650!important;
  letter-spacing:-.058em!important;
}
:where(.section-head h2,.feature-story-head h2,.philosophy-head h2,.download-showcase-head h2,.cta-panel h2){
  font-size:clamp(2.25rem,4.25vw,4rem)!important;
  line-height:1.02!important;
  font-weight:650!important;
  letter-spacing:-.048em!important;
}
:where(.hero-copy,.page-intro p,.product-hero p,.section-head p,.feature-story-head p,.philosophy-head p){
  font-size:clamp(1rem,1.25vw,1.08rem)!important;
  line-height:1.7!important;
}
:where(.eyebrow,.apple-kicker,.product-status){
  font-size:11px!important;
  font-weight:760!important;
  letter-spacing:.075em!important;
}
html[dir="rtl"] :where(.hero h1,.page-intro h1,.product-hero h1,.apple-display,.status-hero h1,.account-hero-copy h1){
  font-size:clamp(2.9rem,5.4vw,5.25rem)!important;
  line-height:1.12!important;
  letter-spacing:0!important;
  font-weight:700!important;
}
html[dir="rtl"] :where(.section-head h2,.feature-story-head h2,.philosophy-head h2,.download-showcase-head h2,.cta-panel h2){
  line-height:1.16!important;
  letter-spacing:0!important;
}

/* Primary action: almost-black with a Genyleap green bias. */
.button:not(.button-ghost):not(.button-dark):not(.button-danger),
.local-links .local-download{
  min-height:46px;
  padding-inline:19px;
  border:1px solid var(--gl-action-line)!important;
  border-radius:18px!important;
  corner-shape:superellipse(2.15);
  background:linear-gradient(180deg,color-mix(in srgb,var(--gl-action) 94%,#153729 6%),var(--gl-action))!important;
  color:var(--gl-action-text)!important;
  box-shadow:0 8px 24px rgba(4,22,14,.14),inset 0 1px 0 rgba(255,255,255,.065)!important;
  font-weight:680!important;
  letter-spacing:-.012em;
  transition:transform var(--gl-motion-fast) var(--gl-motion-ease),border-color var(--gl-motion-fast) ease,background var(--gl-motion-fast) ease,box-shadow var(--gl-motion-fast) ease!important;
}
.button:not(.button-ghost):not(.button-dark):not(.button-danger):hover,
.local-links .local-download:hover{
  transform:translateY(-1px)!important;
  border-color:#2d6049!important;
  background:linear-gradient(180deg,#13281e,var(--gl-action-hover))!important;
  box-shadow:0 12px 30px rgba(4,22,14,.18),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.button:not(.button-ghost):not(.button-dark):not(.button-danger):active,
.local-links .local-download:active{transform:translateY(0) scale(.985)!important}
.button:focus-visible,.local-links .local-download:focus-visible{
  outline:3px solid color-mix(in srgb,#29c98f 28%,transparent)!important;
  outline-offset:3px!important;
}
.button-sm{border-radius:14px!important;corner-shape:superellipse(2.15)}

/* Dark sections need separation from the near-black primary surface. */
.section-dark .button:not(.button-ghost):not(.button-dark),
.cta-panel .button:not(.button-ghost):not(.button-dark){
  border-color:#2a5a44!important;
  box-shadow:0 10px 28px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08)!important;
}

/* Modern card treatment: hairline border + low-noise depth + restrained lift. */
:where(.copy-card,.detail-card,.stat-card,.product-card,.status-service-card,.project-form-card,.form-card,.download-card){
  border-color:color-mix(in srgb,var(--ink) 10%,transparent)!important;
  box-shadow:var(--gl-card-shadow);
}
:where(.copy-card,.detail-card,.stat-card,.product-card,.status-service-card,.project-form-card,.form-card,.download-card){
  border-radius:30px!important;
  corner-shape:superellipse(2.15);
}
.cta-panel{
  border-radius:46px!important;
  corner-shape:superellipse(2.15);
}
:where(.product-card,.status-service-card,.download-card){
  transition:transform 360ms var(--gl-motion-ease),border-color 260ms ease,box-shadow 360ms var(--gl-motion-ease),background 260ms ease!important;
}
:where(.product-card,.status-service-card,.download-card):hover{
  transform:translateY(-3px)!important;
  border-color:color-mix(in srgb,var(--primary) 24%,var(--line))!important;
  box-shadow:var(--gl-card-shadow-hover)!important;
}
:where(.product-card,.status-service-card,.download-card):active{transform:translateY(-1px)!important}
.service-card,.service-card:hover,.service-card:active{
  transform:none!important;
  box-shadow:none!important;
  background:transparent!important;
  border-color:var(--line)!important;
}

/* Soft page entrance. Each root surface follows instead of everything popping at once. */
@keyframes gl-page-enter{
  from{opacity:0;transform:translate3d(0,18px,0)}
  to{opacity:1;transform:none}
}
body>main>*{
  animation:gl-page-enter 720ms var(--gl-motion-ease) both;
  will-change:transform,opacity;
}
body>main>*:nth-child(1){animation-delay:25ms}
body>main>*:nth-child(2){animation-delay:70ms}
body>main>*:nth-child(3){animation-delay:110ms}
body>main>*:nth-child(4){animation-delay:145ms}
body>main>*:nth-child(5){animation-delay:175ms}
body>main>*:nth-child(n+6){animation-delay:195ms}

/* Cookie consent: roomy, calm and explicit about what can actually be stored. */
.cookie-consent{
  left:clamp(40px,4vw,64px)!important;
  right:auto!important;
  bottom:clamp(28px,3vw,44px)!important;
  width:min(510px,calc(100vw - 80px))!important;
  padding:22px!important;
  border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;
  border-radius:44px!important;
  corner-shape:superellipse(2.15);
  background:color-mix(in srgb,var(--paper) 94%,transparent)!important;
  box-shadow:0 24px 70px rgba(4,14,10,.16),0 4px 14px rgba(4,14,10,.06)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  transform:translateY(16px) scale(.985)!important;
  transition:opacity 360ms ease,transform 520ms var(--gl-motion-ease)!important;
}
.cookie-consent.is-visible{transform:none!important}
html[dir="rtl"] .cookie-consent{
  right:clamp(40px,4vw,64px)!important;
  left:auto!important;
}
.supports-fallback-superellipse :where(
  .button,
  .cookie-consent,
  .copy-card,
  .detail-card,
  .stat-card,
  .product-card,
  .status-service-card,
  .project-form-card,
  .form-card,
  .download-card,
  .cta-panel
).is-superellipse-fallback{
  box-shadow:none!important;
}
.cookie-consent-head{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
.cookie-consent-mark{
  position:relative;
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  border:1px solid color-mix(in srgb,var(--primary) 20%,var(--line));
  border-radius:13px;
  background:color-mix(in srgb,var(--primary) 7%,var(--soft));
}
.cookie-consent-mark:before{
  content:"";
  width:16px;
  height:16px;
  border:2px solid var(--primary);
  border-radius:50%;
  box-shadow:7px -7px 0 -5px var(--paper),7px -7px 0 -3px var(--primary);
}
.cookie-consent-copy strong{
  margin:0 0 6px!important;
  font-size:17px!important;
  line-height:1.25;
  letter-spacing:-.025em!important;
}
.cookie-consent-copy p{
  max-width:44ch;
  margin:0!important;
  font-size:12.5px!important;
  line-height:1.62!important;
}
.cookie-consent-copy a{
  margin-top:10px!important;
  color:var(--muted)!important;
  font-size:11px!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
.cookie-consent-details{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid var(--line);
}
.cookie-consent-details summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  list-style:none;
  color:var(--ink);
  font-size:11.5px;
  font-weight:720;
  cursor:pointer;
}
.cookie-consent-details summary::-webkit-details-marker{display:none}
.cookie-consent-details summary:after{content:"+";font-size:17px;font-weight:400;color:var(--muted)}
.cookie-consent-details[open] summary:after{content:"−"}
.cookie-consent-options{display:grid;gap:8px;margin-top:12px}
.cookie-consent-option{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:4px 12px;
  align-items:center;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:14px;
  corner-shape:superellipse(2.15);
  background:color-mix(in srgb,var(--soft) 76%,var(--paper));
}
.cookie-consent-option strong{font-size:11.5px}
.cookie-consent-option small{grid-column:1;color:var(--muted);font-size:10px;line-height:1.45}
.cookie-consent-option span{
  grid-column:2;
  grid-row:1/3;
  align-self:center;
  color:var(--primary);
  font-size:9.5px;
  font-weight:760;
  white-space:nowrap;
}
.cookie-consent-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:9px!important;
  margin-top:18px!important;
}
.cookie-consent-actions button{
  min-height:45px!important;
  padding:0 14px!important;
  border-radius:16px!important;
  corner-shape:superellipse(2.15);
  font-size:11.5px!important;
  font-weight:700!important;
  transition:transform 220ms var(--gl-motion-ease),background 220ms ease,border-color 220ms ease!important;
}
.cookie-consent-actions button:hover{transform:translateY(-1px)}
.cookie-consent-actions button.is-primary{
  border-color:var(--gl-action-line)!important;
  background:var(--gl-action)!important;
  color:var(--gl-action-text)!important;
}
.cookie-consent-actions button.is-primary:hover{background:var(--gl-action-hover)!important}

@media(max-width:640px){
  :where(.hero h1,.page-intro h1,.product-hero h1,.apple-display,.status-hero h1,.account-hero-copy h1){
    font-size:clamp(2.75rem,12.5vw,4.15rem)!important;
    line-height:1.02!important;
  }
  :where(.section-head h2,.feature-story-head h2,.philosophy-head h2,.download-showcase-head h2,.cta-panel h2){
    font-size:clamp(2rem,9.6vw,3.15rem)!important;
  }
  html[dir="rtl"] :where(.hero h1,.page-intro h1,.product-hero h1,.apple-display,.status-hero h1,.account-hero-copy h1){
    font-size:clamp(2.55rem,11.2vw,3.8rem)!important;
    line-height:1.16!important;
  }
  .cookie-consent{
    left:max(16px,env(safe-area-inset-left))!important;
    right:max(16px,env(safe-area-inset-right))!important;
    bottom:max(16px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    padding:18px!important;
    border-radius:21px!important;
  }
  .cookie-consent-head{grid-template-columns:38px minmax(0,1fr);gap:12px}
  .cookie-consent-mark{width:38px;height:38px;border-radius:12px}
  .cookie-consent-copy strong{font-size:16px!important}
  .cookie-consent-actions{grid-template-columns:1fr!important}
  .cookie-consent-actions button.is-primary{grid-row:1}
}

@media(prefers-reduced-motion:reduce){
  body>main>*{animation:none!important;filter:none!important;transform:none!important}
  :where(.service-card,.product-card,.status-service-card,.download-card,.button,.local-links .local-download,.cookie-consent){transition:none!important}
}


/* Cookie consent v2 — Boski-inspired, browser-stable rounded geometry.
   Intentionally opts out of the global superellipse engine. */
.cookie-consent-boski{
  left:clamp(32px,3.5vw,52px)!important;
  right:auto!important;
  bottom:clamp(24px,3vw,40px)!important;
  width:min(470px,calc(100vw - 64px))!important;
  padding:28px 28px 24px!important;
  border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important;
  border-radius:28px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  background:color-mix(in srgb,var(--paper) 98%,transparent)!important;
  box-shadow:
    0 22px 52px rgba(7,12,10,.13),
    0 4px 12px rgba(7,12,10,.055)!important;
  backdrop-filter:blur(14px) saturate(120%)!important;
  overflow:visible!important;
}
html[dir="rtl"] .cookie-consent-boski{
  right:clamp(32px,3.5vw,52px)!important;
  left:auto!important;
}
.cookie-consent-boski .cookie-consent-copy strong{
  display:block;
  margin:0 0 12px!important;
  color:var(--ink)!important;
  font-size:20px!important;
  font-weight:620!important;
  line-height:1.2!important;
  letter-spacing:-.025em!important;
}
html[dir="rtl"] .cookie-consent-boski .cookie-consent-copy strong{
  letter-spacing:0!important;
  line-height:1.45!important;
}
.cookie-consent-boski .cookie-consent-copy p{
  max-width:none!important;
  margin:0!important;
  color:var(--muted)!important;
  font-size:15px!important;
  line-height:1.5!important;
}
.cookie-consent-boski .cookie-consent-copy a{
  display:inline!important;
  margin:0!important;
  color:var(--ink)!important;
  font-size:inherit!important;
  font-weight:500!important;
  text-decoration:underline!important;
  text-decoration-thickness:1.5px!important;
  text-underline-offset:4px!important;
}
.cookie-consent-boski .cookie-consent-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin:24px 0 0!important;
}
.cookie-consent-boski .cookie-consent-actions button{
  min-height:52px!important;
  padding:0 18px!important;
  border:1px solid color-mix(in srgb,var(--ink) 14%,transparent)!important;
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  background:var(--paper)!important;
  color:var(--ink)!important;
  box-shadow:none!important;
  font-size:14px!important;
  font-weight:560!important;
  letter-spacing:-.01em!important;
  transform:none!important;
}
.cookie-consent-boski .cookie-consent-actions button:hover{
  transform:none!important;
  border-color:color-mix(in srgb,var(--ink) 24%,transparent)!important;
  background:color-mix(in srgb,var(--soft) 60%,var(--paper))!important;
}
.cookie-consent-boski .cookie-consent-actions button.is-primary{
  border-color:#111513!important;
  background:#111513!important;
  color:#fff!important;
  box-shadow:none!important;
}
.cookie-consent-boski .cookie-consent-actions button.is-primary:hover{
  border-color:#1a221e!important;
  background:#1a221e!important;
}
.cookie-consent-boski .cookie-consent-details{
  margin:18px 0 0!important;
  padding:0!important;
  border:0!important;
}
.cookie-consent-boski .cookie-consent-details summary{
  display:block!important;
  padding:0!important;
  color:var(--ink)!important;
  font-size:15px!important;
  font-weight:520!important;
  line-height:1.4!important;
  text-align:center!important;
  cursor:pointer;
}
.cookie-consent-boski .cookie-consent-details summary:after{display:none!important}
.cookie-consent-boski .cookie-consent-options{
  display:grid!important;
  gap:8px!important;
  margin-top:18px!important;
  padding-top:16px!important;
  border-top:1px solid var(--line)!important;
}
.cookie-consent-boski .cookie-consent-option{
  border-radius:14px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  box-shadow:none!important;
}
html[data-theme="dark"] .cookie-consent-boski{
  border-color:rgba(255,255,255,.14)!important;
  background:color-mix(in srgb,var(--paper) 96%,#fff 4%)!important;
  box-shadow:
    0 24px 58px rgba(0,0,0,.42),
    0 4px 14px rgba(0,0,0,.22)!important;
}
html[data-theme="dark"] .cookie-consent-boski .cookie-consent-actions button{
  border-color:rgba(255,255,255,.16)!important;
}
html[data-theme="dark"] .cookie-consent-boski .cookie-consent-actions button.is-primary{
  border-color:#dff8ec!important;
  background:#dff8ec!important;
  color:#07110d!important;
}
@media(max-width:640px){
  .cookie-consent-boski{
    left:max(16px,env(safe-area-inset-left))!important;
    right:max(16px,env(safe-area-inset-right))!important;
    bottom:max(16px,env(safe-area-inset-bottom))!important;
    width:auto!important;
    padding:24px 22px 20px!important;
    border-radius:24px!important;
  }
  .cookie-consent-boski .cookie-consent-copy strong{font-size:19px!important}
  .cookie-consent-boski .cookie-consent-copy p{font-size:14px!important}
  .cookie-consent-boski .cookie-consent-actions{grid-template-columns:1fr!important}
  .cookie-consent-boski .cookie-consent-actions button.is-primary{grid-row:auto!important}
}


/* Interaction geometry v3 — one control language across the site. */
:root{
  --gl-control-pill:999px;
  --gl-control-radius:16px;
  --gl-control-radius-sm:13px;
  --gl-surface-radius:28px;
}

/* Primary/secondary action buttons follow the Cookie consent geometry. */
:where(
  .button,
  .local-links .local-download,
  .config-submit,
  .docs-btn,
  .nav-actions .button-sm,
  .mobile-nav-actions .button,
  .account-actions .button
){
  border-radius:var(--gl-control-pill)!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
:where(
  .button,
  .local-links .local-download,
  .config-submit,
  .docs-btn
):not(.button-danger){
  min-height:48px;
}
.button-sm{min-height:36px!important;padding-inline:15px!important}

/* Form controls and custom comboboxes are rounded rectangles, never superellipses. */
:where(
  input:not([type="checkbox"]):not([type="radio"]),
  textarea,
  select,
  .gl-select-trigger
){
  border-radius:var(--gl-control-radius)!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
.gl-select{
  position:relative!important;
  z-index:1;
  overflow:visible!important;
}
.gl-select.is-open{z-index:240!important}
.gl-select-trigger{
  min-height:54px!important;
  padding-inline:16px!important;
  border:1px solid color-mix(in srgb,var(--ink) 12%,transparent)!important;
  background:color-mix(in srgb,var(--paper) 94%,var(--soft))!important;
  box-shadow:none!important;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important;
}
.gl-select-trigger:hover{
  border-color:color-mix(in srgb,var(--primary) 36%,var(--line))!important;
}
.gl-select-trigger[aria-expanded="true"]{
  border-color:color-mix(in srgb,var(--primary) 56%,var(--line))!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)!important;
}
.gl-select-popover{
  z-index:260!important;
  top:calc(100% + 8px)!important;
  padding:6px!important;
  border:1px solid color-mix(in srgb,var(--ink) 11%,transparent)!important;
  border-radius:18px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  background:color-mix(in srgb,var(--paper) 98%,transparent)!important;
  box-shadow:0 18px 46px rgba(8,14,11,.14)!important;
  backdrop-filter:blur(16px) saturate(120%)!important;
  overflow:auto!important;
}
.gl-select-option{
  min-height:44px!important;
  padding:10px 12px!important;
  border-radius:11px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  box-shadow:none!important;
}
.gl-select-option:hover,
.gl-select-option.is-focused{
  background:color-mix(in srgb,var(--primary) 7%,var(--paper))!important;
}
.gl-select-option[aria-selected="true"]{
  background:color-mix(in srgb,var(--primary) 9%,var(--paper))!important;
  color:var(--primary)!important;
}
.gl-select-option[aria-selected="true"]:after{
  box-shadow:none!important;
}

/* Keep dropdowns above the following section instead of being visually cut off. */
.platform-picker-wrap{
  position:relative!important;
  z-index:12!important;
  overflow:visible!important;
}
.platform-picker-wrap>.wrap,
.download-configurator,
.download-configurator .field,
.download-configurator .config-field{
  overflow:visible!important;
}
.download-showcase{
  z-index:0!important;
}

/* Segmented controls share the same rounded geometry family. */
:where(.platform-picker,.account-tabs){
  border-radius:20px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
:where(.platform-chip,.account-tab){
  border-radius:14px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
.platform-chip.active{
  box-shadow:none!important;
}

/* Surface cards: larger radius, but no exaggerated squircle geometry. */
:where(
  .copy-card,
  .detail-card,
  .stat-card,
  .product-card,
  .status-service-card,
  .project-form-card,
  .form-card,
  .download-card,
  .download-product-premium,
  .download-product-v3,
  .cta-panel
){
  border-radius:var(--gl-surface-radius)!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}

:where(.buy-geny-nav,.account-nav-link){
  border-radius:var(--gl-control-pill)!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
.download-configurator{
  border-radius:24px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}


/* Primary buttons v4 — match Cookie consent: pure, flat, consistent. */
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .local-links .local-download,
  .config-submit
){
  min-height:52px!important;
  padding-inline:22px!important;
  border:0!important;
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  background:#111513!important;
  color:#fff!important;
  box-shadow:none!important;
  font-weight:600!important;
  letter-spacing:-.012em!important;
  transform:none!important;
  transition:background .18s ease,color .18s ease,opacity .18s ease!important;
}
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .local-links .local-download,
  .config-submit
):hover{
  border:0!important;
  background:#1a211e!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .local-links .local-download,
  .config-submit
):active{
  background:#0d110f!important;
  box-shadow:none!important;
  transform:none!important;
}
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .local-links .local-download,
  .config-submit
):focus-visible{
  outline:2px solid color-mix(in srgb,var(--primary) 45%,transparent)!important;
  outline-offset:3px!important;
  box-shadow:none!important;
}

/* Never reintroduce decorative borders/highlights inside dark CTA sections. */
.section-dark :where(.button:not(.button-ghost):not(.button-danger):not(.button-dark)),
.cta-panel :where(.button:not(.button-ghost):not(.button-danger):not(.button-dark)){
  border:0!important;
  background:#111513!important;
  box-shadow:none!important;
}

/* Inline arrows/icons should stay visually quiet like the Cookie buttons. */
:where(.button,.config-submit,.local-links .local-download) :where(i,svg){
  filter:none!important;
  box-shadow:none!important;
}


/* Global action geometry v5 — Cookie consent is the canonical button shape. */
:where(
  .button,
  .buy-geny-nav,
  .account-nav-link,
  .config-submit,
  .local-links .local-download,
  .footer-v2-cta,
  .product-download-link,
  .project-submit .button,
  .mobile-nav-actions .button
){
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Primary actions: same flat near-black treatment as Cookie consent. */
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .account-nav-link,
  .config-submit,
  .local-links .local-download,
  .product-download-link:not(.button-ghost),
  .project-submit .button:not(.button-ghost):not(.button-danger)
){
  border:0!important;
  background:#111513!important;
  color:#fff!important;
  box-shadow:none!important;
}
:where(
  .button:not(.button-ghost):not(.button-danger):not(.button-dark),
  .account-nav-link,
  .config-submit,
  .local-links .local-download,
  .product-download-link:not(.button-ghost),
  .project-submit .button:not(.button-ghost):not(.button-danger)
):hover{
  border:0!important;
  background:#1a211e!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}

/* button-dark is a normal primary action on light surfaces. */
.button.button-dark{
  border:0!important;
  border-radius:999px!important;
  corner-shape:round!important;
  background:#111513!important;
  color:#fff!important;
  box-shadow:none!important;
}
.button.button-dark:hover{
  border:0!important;
  background:#1a211e!important;
  color:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}
/* On genuinely dark panels, invert only the color — keep the same Cookie geometry. */
:where(.section-dark,.cta-panel,.detail-download-shell,.feature-panel.dark) .button.button-dark{
  border:0!important;
  background:#fff!important;
  color:#111513!important;
  box-shadow:none!important;
}
:where(.section-dark,.cta-panel,.detail-download-shell,.feature-panel.dark) .button.button-dark:hover{
  background:#f1f3f2!important;
  color:#111513!important;
}

/* Secondary actions mirror Cookie's outlined secondary button. */
.button.button-ghost,
.product-download-link.button-ghost{
  border:1px solid color-mix(in srgb,var(--ink) 15%,transparent)!important;
  border-radius:999px!important;
  corner-shape:round!important;
  background:var(--paper)!important;
  color:var(--ink)!important;
  box-shadow:none!important;
  transform:none!important;
}
.button.button-ghost:hover,
.product-download-link.button-ghost:hover{
  border-color:color-mix(in srgb,var(--ink) 24%,transparent)!important;
  background:color-mix(in srgb,var(--soft) 60%,var(--paper))!important;
  color:var(--ink)!important;
  box-shadow:none!important;
}
:where(.section-dark,.cta-panel,.detail-download-shell,.feature-panel.dark) .button.button-ghost{
  border-color:rgba(255,255,255,.22)!important;
  background:transparent!important;
  color:#fff!important;
}

/* Destructive actions keep their semantic color, but use the exact same shape. */
.button.button-danger{
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  box-shadow:none!important;
  transform:none!important;
}

/* GENY keeps its gold identity, but loses its separate geometry/effects. */
.buy-geny-nav,
html[data-theme="dark"] .buy-geny-nav{
  border:0!important;
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  background:#9d7424!important;
  color:#fff7e8!important;
  box-shadow:none!important;
  transform:none!important;
}
.buy-geny-nav:hover,
html[data-theme="dark"] .buy-geny-nav:hover{
  border:0!important;
  background:#ad842f!important;
  box-shadow:none!important;
  transform:none!important;
}
.buy-geny-nav:active{transform:none!important}

/* Header/account actions use the same clean primary shape. */
.account-nav-link,
.account-nav-link:hover{
  border:0!important;
  border-radius:999px!important;
  corner-shape:round!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  box-shadow:none!important;
}

/* Mobile nav: remove the last square/superellipse overrides. */
@media(max-width:980px){
  body>.main-nav>.mobile-nav-actions>.account-nav-link,
  body>.main-nav>.mobile-nav-actions>.buy-geny-nav-mobile,
  body>.main-nav>.mobile-nav-actions>.button,
  body>.main-nav>.mobile-nav-actions>.locale-toggle,
  body>.main-nav>.mobile-nav-actions>.theme-toggle{
    border-radius:999px!important;
    corner-shape:round!important;
    clip-path:none!important;
    -webkit-clip-path:none!important;
    box-shadow:none!important;
  }
  body>.main-nav>.mobile-nav-actions>.account-nav-link:not(.is-authenticated){
    border:0!important;
    background:#111513!important;
    color:#fff!important;
  }
  body>.main-nav>.mobile-nav-actions>.buy-geny-nav-mobile{
    border:0!important;
    background:#9d7424!important;
    color:#fff7e8!important;
  }
}

/* Small action buttons remain compact, never square. */
.button-sm{
  min-height:38px!important;
  padding-inline:16px!important;
  border-radius:999px!important;
  corner-shape:round!important;
}
