/* Product-local action roles. Alex's warm gradient and inset pill rim remain. */
:root{
  --clarity-action-gradient:linear-gradient(180deg,#ff1e1e 0%,#ff7300 52%,#ffd400 100%);
  --clarity-action-ink:#111;--clarity-action-rim:inset 0 0 0 3px rgb(255 255 255 / .28);
}
.site-header .button,:is(#main,#support-dialog) .button.okto-action,#cookie-dialog .cookie-button{
  display:inline-flex;align-items:center;justify-content:center;gap:0;
  min-height:56px;max-width:100%;width:fit-content;padding:14px 24px;
  border:0;border-radius:999px;background:var(--clarity-action-gradient);color:var(--clarity-action-ink);
  font-family:var(--okto-font);font-size:20px;font-weight:400;line-height:28px;letter-spacing:-.02em;
  text-align:center;text-transform:none;text-decoration:none;white-space:normal;
  box-shadow:var(--clarity-action-rim);cursor:pointer;transition:filter 160ms ease,transform 160ms ease;
}
.site-header .button{min-height:48px;padding:12px 24px;font-size:17px;line-height:24px}
.site-header .mobile-menu .button{min-height:56px;padding:14px 24px;font-size:20px;line-height:28px}
:is(#main,#support-dialog) .button.okto-action [aria-hidden=true]{display:none}
.site-header .button:hover,:is(#main,#support-dialog) .button.okto-action:hover,#cookie-dialog .cookie-button--primary:hover{
  background:var(--clarity-action-gradient);color:var(--clarity-action-ink);box-shadow:var(--clarity-action-rim);filter:brightness(1.06);transform:none;
}
.site-header .button:active,:is(#main,#support-dialog) .button.okto-action:active,#cookie-dialog .cookie-button:active{transform:scale(.98)}
.site-header .button:focus-visible,:is(#main,#support-dialog) .button.okto-action:focus-visible,#cookie-dialog .cookie-button:focus-visible{
  outline:2px solid #111;outline-offset:4px;box-shadow:var(--clarity-action-rim),0 0 0 4px #fff;
}
/* The invisible hit area grows inside the existing, unchanged header row. */
#menu-toggle{position:relative}
#menu-toggle::before{content:'';position:absolute;inset:-4px 0}
#cookie-dialog[data-okto-system]{
  position:fixed;inset:auto auto 20px 20px;box-sizing:border-box;width:640px;max-width:calc(100vw - 40px);
  max-height:calc(100svh - 40px);margin:0;padding:32px;border:0;border-radius:18px;overflow:auto;overscroll-behavior:contain;
  background:#fff;color:#1c1c1c;box-shadow:0 12px 64px rgb(0 0 0 / .14);--okto-focus:#111;--okto-focus-gap:#fff;
}
#cookie-dialog[data-okto-system]::backdrop{background:rgb(0 0 0 / .15)}
#cookie-dialog .cookie-content{gap:0}
#cookie-dialog[data-okto-system] h2{margin:0 0 16px;font-size:24px;line-height:28px;letter-spacing:0;font-weight:700;text-transform:uppercase}
#cookie-dialog #cookie-title:focus{outline:none}
#cookie-dialog[data-okto-system] p{margin:0;color:#555;font-size:20px;line-height:30px;letter-spacing:0;font-weight:200}
#cookie-dialog .cookie-actions{display:flex;align-items:center;gap:12px;margin-top:24px}
#cookie-dialog .cookie-actions .cookie-button{flex:1;min-width:0;text-transform:uppercase;letter-spacing:0}
#cookie-dialog .cookie-button--neutral{background:#f2f2f2;box-shadow:none;color:#1c1c1c}
#cookie-dialog .cookie-button--neutral:hover{background:#e8e8e8;filter:none}
#cookie-dialog .cookie-more,#cookie-dialog .cookie-close{
  align-self:flex-start;min-height:44px;padding:10px 0;margin-top:12px;color:#1c1c1c;
  font-family:var(--okto-font);font-size:16px;font-weight:400;line-height:24px;text-decoration:underline;text-underline-offset:4px;
}
#cookie-dialog .cookie-more:hover,#cookie-dialog .cookie-close:hover{text-decoration-thickness:2px}
#cookie-dialog .cookie-more:focus-visible,#cookie-dialog .cookie-close:focus-visible,#cookie-dialog a:focus-visible{outline:2px solid #111;outline-offset:4px}
#cookie-dialog .cookie-details{display:flex;flex-direction:column;align-items:flex-start;margin-top:24px;padding-top:24px;border-top:1px solid #e4e4e4}
#cookie-dialog .cookie-details h3{font-size:20px;line-height:28px;letter-spacing:0;margin:0 0 8px;font-weight:700}
#cookie-dialog .cookie-category-state{display:block;font-size:16px;line-height:24px;font-weight:400;color:#62665f}
#cookie-dialog .cookie-details p{font-size:18px;line-height:27px}
#cookie-dialog .cookie-details>div+div{margin-top:24px}
#cookie-dialog .cookie-details a{display:inline-flex;align-items:center;min-height:44px;margin-top:16px;font-size:16px;text-decoration:underline;text-underline-offset:4px}
#cookie-dialog .cookie-details .cookie-button{flex:none;margin-top:16px;text-transform:uppercase;letter-spacing:0}
#cookie-dialog .cookie-rule{height:0;margin-top:24px;border-top:1px solid #e4e4e4}
@media(max-width:600px){
  :is(#main,#support-dialog) .button.okto-action,#cookie-dialog .cookie-button,.site-header .mobile-menu .button{padding-inline:16px}
  #cookie-dialog[data-okto-system]{inset:auto auto 12px 12px;width:calc(100vw - 24px);max-width:none;max-height:calc(100svh - 24px);padding:24px;border-radius:16px}
  #cookie-dialog[data-okto-system] h2{font-size:22px;line-height:26px}
  #cookie-dialog[data-okto-system] p{font-size:18px;line-height:27px}
  #cookie-dialog .cookie-actions{flex-direction:column;align-items:stretch}
  #cookie-dialog .cookie-actions .cookie-button{width:100%;flex:none}
}
@media(prefers-reduced-motion:reduce){
  .site-header .button,:is(#main,#support-dialog) .button.okto-action,#cookie-dialog .cookie-button{transition:none}
  .site-header .button:active,:is(#main,#support-dialog) .button.okto-action:active,#cookie-dialog .cookie-button:active{transform:none}
}
