:root {
  --bw-btn-start: #1c6b47;
  --bw-btn-end: #0c7951;
  --bw-btn-glow: rgba(28, 107, 71, .24);
  --bw-btn-secondary: rgba(255, 255, 255, .62);
  --bw-btn-secondary-hover: rgba(255, 255, 255, .9);
  --bw-btn-secondary-border: rgba(13, 21, 18, .11);
  --bw-btn-secondary-text: rgba(13, 21, 18, .65);
  --bw-btn-secondary-text-hover: #0d1512;
  --bw-btn-focus: #e8630a;
}

html[data-theme="dark"] {
  --bw-btn-start: #2fa96e;
  --bw-btn-end: #0c7951;
  --bw-btn-glow: rgba(47, 169, 110, .34);
  --bw-btn-secondary: rgba(237, 243, 240, .07);
  --bw-btn-secondary-hover: rgba(237, 243, 240, .12);
  --bw-btn-secondary-border: rgba(237, 243, 240, .14);
  --bw-btn-secondary-text: rgba(237, 243, 240, .72);
  --bw-btn-secondary-text-hover: #edf3f0;
  --bw-btn-focus: #ff9a3d;
}

/* Główne komendy */
.cta,
.final .cta,
.summary .cta,
.profile-button,
.btn:not(.ghost),
.bb-btn.primary,
.p-cta,
.plan .p-cta,
.offer-hero__actions a:first-child,
.offer-contact__button,
.pdf-tool__print,
.client-pdf-page .pdf-tool__print,
.case-contact-cta a,
.showcase-cta a,
.anteny-result a:first-child,
.sprawniej-result a:first-child,
.tools-result a:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 24px;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 999px;
  color: #fff !important;
  background: linear-gradient(150deg, var(--bw-btn-start), var(--bw-btn-end));
  box-shadow: 0 16px 40px -24px var(--bw-btn-glow);
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0;
  transition:
    transform .2s ease,
    box-shadow .3s ease,
    border-color .2s ease,
    background-color .2s ease,
    color .2s ease;
}

/* Komendy drugorzędne */
.cta-ghost,
.btn.ghost,
.bb-btn.ghost,
.offer-nav > div > a,
.offer-hero__actions a:not(:first-child),
.pdf-tool__edit,
.client-pdf-page .pdf-tool__edit,
.pdf-config__preview-link,
.pdf-config__copy-link,
.client-pdf-page .pdf-config__preview-link,
.client-pdf-page .pdf-config__copy-link,
.showcase-item__info a,
.tool-demo__head > a,
.subaff-prototype__link,
.anteny-result a:not(:first-child),
.sprawniej-result a:not(:first-child),
.tools-result a:not(:first-child) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 50px;
  padding: 0 24px;
  border: 1px solid var(--bw-btn-secondary-border);
  border-radius: 999px;
  color: var(--bw-btn-secondary-text) !important;
  background: var(--bw-btn-secondary);
  box-shadow: none;
  font-family: Inter, Arial, sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  letter-spacing: 0;
  backdrop-filter: blur(10px);
  transition:
    transform .2s ease,
    box-shadow .3s ease,
    border-color .2s ease,
    background-color .2s ease,
    color .2s ease;
}

/* Przyciski na stałych ciemnych tłach */
.offer-nav > div > a,
.offer-hero__actions a:not(:first-child),
.pdf-tool__edit,
.showcase-item__info a,
.tool-demo__head > a,
.anteny-result a:not(:first-child),
.sprawniej-result a:not(:first-child) {
  --bw-btn-secondary: rgba(255, 255, 255, .065);
  --bw-btn-secondary-hover: rgba(255, 255, 255, .12);
  --bw-btn-secondary-border: rgba(255, 255, 255, .16);
  --bw-btn-secondary-text: rgba(255, 255, 255, .78);
  --bw-btn-secondary-text-hover: #fff;
}

.subaff-prototype__link {
  width: fit-content;
  margin-left: max(20px, calc((100% - 1380px) / 2));
}

.studio-pricing-card--config .profile-button {
  color: #07110d !important;
  background: linear-gradient(150deg, #7fe3ae, #2fa96e);
}

/* ZĹ‚oĹĽony przycisk pobrania zachowuje ikonÄ™, ale korzysta z tej samej bryĹ‚y. */
.portfolio-recruiter__actions .portfolio-recruiter__cv {
  border-radius: 999px;
}

/* Spójny ruch i brak zmiany geometrii */
@media (hover: hover) {
  .cta:hover,
  .final .cta:hover,
  .summary .cta:hover,
  .profile-button:hover,
  .btn:not(.ghost):hover,
  .bb-btn.primary:hover,
  .p-cta:hover,
  .plan .p-cta:hover,
  .offer-hero__actions a:first-child:hover,
  .offer-contact__button:hover,
  .pdf-tool__print:hover,
  .client-pdf-page .pdf-tool__print:hover,
  .case-contact-cta a:hover,
  .showcase-cta a:hover,
  .anteny-result a:first-child:hover,
  .sprawniej-result a:first-child:hover,
  .tools-result a:first-child:hover {
    color: #fff !important;
    background: linear-gradient(150deg, var(--bw-btn-start), var(--bw-btn-end));
    transform: translateY(-2px);
    box-shadow: 0 22px 54px -28px var(--bw-btn-glow);
  }

  .studio-pricing-card--config .profile-button:hover {
    color: #07110d !important;
    background: linear-gradient(150deg, #7fe3ae, #2fa96e);
  }

  .cta-ghost:hover,
  .btn.ghost:hover,
  .bb-btn.ghost:hover,
  .offer-nav > div > a:hover,
  .offer-hero__actions a:not(:first-child):hover,
  .pdf-tool__edit:hover,
  .client-pdf-page .pdf-tool__edit:hover,
  .pdf-config__preview-link:hover,
  .pdf-config__copy-link:hover,
  .client-pdf-page .pdf-config__preview-link:hover,
  .client-pdf-page .pdf-config__copy-link:hover,
  .showcase-item__info a:hover,
  .tool-demo__head > a:hover,
  .subaff-prototype__link:hover,
  .anteny-result a:not(:first-child):hover,
  .sprawniej-result a:not(:first-child):hover,
  .tools-result a:not(:first-child):hover {
    color: var(--bw-btn-secondary-text-hover) !important;
    background: var(--bw-btn-secondary-hover);
    border-color: var(--bw-btn-secondary-border);
    transform: translateY(-2px);
    box-shadow: none;
  }
}

.cta:active,
.profile-button:active,
.btn:active,
.bb-btn:active,
.p-cta:active,
.offer-nav > div > a:active,
.offer-hero__actions a:active,
.offer-contact__button:active,
.case-contact-cta a:active,
.showcase-cta a:active,
.pdf-tool__edit:active,
.pdf-tool__print:active,
.pdf-config__preview-link:active,
.pdf-config__copy-link:active,
.showcase-item__info a:active,
.tool-demo__head > a:active,
.subaff-prototype__link:active,
.anteny-result a:active,
.sprawniej-result a:active,
.tools-result a:active {
  transform: translateY(0);
}

.cta:focus-visible,
.cta-ghost:focus-visible,
.profile-button:focus-visible,
.btn:focus-visible,
.bb-btn:focus-visible,
.p-cta:focus-visible,
.offer-nav > div > a:focus-visible,
.offer-hero__actions a:focus-visible,
.offer-contact__button:focus-visible,
.case-contact-cta a:focus-visible,
.showcase-cta a:focus-visible,
.pdf-tool__edit:focus-visible,
.pdf-tool__print:focus-visible,
.pdf-config__preview-link:focus-visible,
.pdf-config__copy-link:focus-visible,
.showcase-item__info a:focus-visible,
.tool-demo__head > a:focus-visible,
.subaff-prototype__link:focus-visible,
.anteny-result a:focus-visible,
.sprawniej-result a:focus-visible,
.tools-result a:focus-visible,
.case-scroll-note__action:focus-visible {
  outline: 3px solid var(--bw-btn-focus);
  outline-offset: 3px;
}

.cta[disabled],
.profile-button[aria-disabled="true"],
.btn[disabled],
.bb-btn[aria-disabled="true"],
.p-cta[aria-disabled="true"],
.pdf-tool__print[disabled] {
  opacity: .48;
  transform: none;
  box-shadow: none;
  pointer-events: none;
}

@media (max-width: 640px) {
  .cta,
  .cta-ghost,
  .profile-button,
  .btn,
  .bb-btn,
  .p-cta,
  .offer-hero__actions a,
  .offer-contact__button,
  .case-contact-cta a,
  .showcase-cta a,
  .showcase-item__info a,
  .tool-demo__head > a,
  .subaff-prototype__link,
  .anteny-result a,
  .sprawniej-result a,
  .tools-result a {
    min-height: 50px;
    padding-right: 20px;
    padding-left: 20px;
  }

  .chrome .actions .btn {
    min-height: 50px;
  }

  .subaff-prototype__link {
    width: calc(100% - 40px);
    margin-right: 20px;
    margin-left: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cta,
  .cta-ghost,
  .profile-button,
  .btn,
  .bb-btn,
  .p-cta,
  .offer-nav > div > a,
  .offer-hero__actions a,
  .offer-contact__button,
  .case-contact-cta a,
  .showcase-cta a,
  .pdf-tool__edit,
  .pdf-tool__print,
  .pdf-config__preview-link,
  .pdf-config__copy-link,
  .showcase-item__info a,
  .tool-demo__head > a,
  .subaff-prototype__link,
  .anteny-result a,
  .sprawniej-result a,
  .tools-result a {
    transition: none;
  }
}
