/**
 * Botões CIO Codex — um único estilo em todo o site.
 * Primary: pill ciano + texto escuro (igual Assine).
 * Secondary/ghost: mesmo formato, fundo transparente.
 */

:root {
    --cio-btn-bg: #00bfff;
    --cio-btn-bg-hover: #0099cc;
    --cio-btn-fg: #0b0f1a;
    --cio-btn-radius: 999px;
    --cio-btn-shadow: 0 4px 12px rgba(0, 191, 255, 0.3);
    --cio-btn-pad-y: 10px;
    --cio-btn-pad-x: 20px;
    --cio-btn-size: 13px;
    --cio-btn-weight: 700;
    --cio-btn-line: 1.2;
}

.cio-btn,
.cio-btn-primary,
.cio-ma-btn,
.cio-ta-btn-new,
.cio-forum-btn,
.cio-forum-btn--primary,
.cio-hp-product-cta-btn,
.cio-hp-fw-tree-btn,
.cio-sp-access-gate-btn,
.cio-sp-access-gate-btn--primary,
.cio-col-btn,
.cio-book-btn,
.cio-book-btn--primary,
.cio-ty-btn,
.cio-ty-btn--primary,
.cio-wc-thankyou-btn,
.cio-gfm-btn,
.cio-gfm-btn--primary,
.cio-listing-search-btn,
.cio-col-search-btn,
.cio-cookie-consent__btn,
.cio-reg-submit,
.cio-nl-submit,
.cio-prod-btn,
.cio-prod-empty-btn,
.cio-prod-pagination-btn,
.cio-stats-btn,
.cio-stats-btn--primary,
.search-container .btn,
.search-container .btn-primary,
.pagination-btn,
.pagination-current,
.cio-pfe-wrap .msf-btn,
.cio-pfe-wrap .msf-btn--next,
.cio-pfe-wrap .msf-btn--submit,
.cio-pfe-wrap .cio-pfe-next,
.cio-pfe-wrap input[type="submit"],
.elementor-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: var(--cio-btn-pad-y) var(--cio-btn-pad-x);
    border: none;
    border-radius: var(--cio-btn-radius);
    background: var(--cio-btn-bg) !important;
    background-image: none !important;
    color: var(--cio-btn-fg) !important;
    font-size: var(--cio-btn-size);
    font-weight: var(--cio-btn-weight);
    line-height: var(--cio-btn-line);
    letter-spacing: 0.02em;
    text-decoration: none !important;
    text-transform: none;
    white-space: nowrap;
    box-shadow: none;
    cursor: pointer;
    box-sizing: border-box;
    font-family: inherit;
    transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease, color 0.25s ease;
}

.cio-btn:hover,
.cio-btn-primary:hover,
.cio-ma-btn:hover,
.cio-ta-btn-new:hover,
.cio-forum-btn--primary:hover,
.cio-hp-product-cta-btn:hover,
.cio-hp-fw-tree-btn:hover,
.cio-sp-access-gate-btn--primary:hover,
.cio-sp-access-gate-btn--primary:focus,
.cio-col-btn:hover,
.cio-book-btn--primary:hover,
.cio-ty-btn:hover,
.cio-ty-btn--primary:hover,
.cio-wc-thankyou-btn:hover,
.cio-gfm-btn--primary:hover,
.cio-listing-search-btn:hover,
.cio-listing-search-btn:focus,
.cio-col-search-btn:hover,
.cio-col-search-btn:focus,
.cio-cookie-consent__btn:not(:disabled):hover,
.cio-reg-submit:hover,
.cio-nl-submit:hover,
.cio-prod-btn:hover,
.cio-prod-empty-btn:hover,
.cio-prod-pagination-btn:hover,
.cio-stats-btn--primary:hover,
.search-container .btn-primary:hover,
.pagination-btn:hover:not(:disabled),
.cio-pfe-wrap .msf-btn--next:hover,
.cio-pfe-wrap .msf-btn--submit:hover,
.cio-pfe-wrap .cio-pfe-next:hover,
.cio-pfe-wrap input[type="submit"]:hover,
.elementor-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
    background: var(--cio-btn-bg-hover) !important;
    background-image: none !important;
    color: var(--cio-btn-fg) !important;
    transform: translateY(-2px);
    box-shadow: var(--cio-btn-shadow);
    filter: none;
    opacity: 1;
}

.cio-ta-btn-stats,
.cio-ma-btn--outline,
.cio-forum-btn--ghost,
.cio-sp-access-gate-btn--secondary,
.cio-book-btn--outline,
.cio-ty-btn--ghost,
.cio-gfm-btn--ghost,
.cio-stats-btn--ghost,
.search-container .btn-secondary,
.cio-pfe-wrap .msf-btn--prev,
.cio-pfe-wrap .cio-pfe-prev,
.woocommerce a.button:not(.alt):not(.checkout):not(.add_to_cart_button) {
    background: transparent !important;
    background-image: none !important;
    color: var(--cio-btn-bg) !important;
    border: 1px solid rgba(0, 191, 255, 0.45) !important;
}

.cio-ta-btn-stats:hover,
.cio-ma-btn--outline:hover,
.cio-forum-btn--ghost:hover,
.cio-sp-access-gate-btn--secondary:hover,
.cio-sp-access-gate-btn--secondary:focus,
.cio-book-btn--outline:hover,
.cio-ty-btn--ghost:hover,
.cio-gfm-btn--ghost:hover,
.cio-stats-btn--ghost:hover,
.search-container .btn-secondary:hover,
.cio-pfe-wrap .msf-btn--prev:hover,
.cio-pfe-wrap .cio-pfe-prev:hover {
    background: rgba(0, 191, 255, 0.12) !important;
    border-color: var(--cio-btn-bg) !important;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: none;
}

.cio-ma-btn--danger {
    background: rgba(255, 80, 100, 0.16) !important;
    border: 1px solid rgba(255, 107, 129, 0.45) !important;
    color: #ff8fa3 !important;
}

.cio-ma-btn--danger:hover {
    background: rgba(255, 80, 100, 0.28) !important;
    border-color: rgba(255, 107, 129, 0.7) !important;
    color: #ffb3c0 !important;
    box-shadow: none;
}

.cio-hp-product-cta-btn,
.cio-col-btn--full,
.cio-ma-btn--block,
.cio-reg-wrap .cio-reg-submit,
.cio-stats-btn {
    width: 100%;
}

.cio-hp-product-cta-btn {
    min-height: 52px;
    padding: 14px 24px;
    font-size: 15px;
}

.cio-hp-product-cta-btn::before {
    display: none;
}

.cio-nl-submit {
    min-height: 48px;
    height: auto;
}

.cio-cookie-consent__btn:disabled,
.cio-col-btn:disabled,
.pagination-btn:disabled,
.cio-pfe-wrap .msf-nav .msf-btn:disabled,
.cio-pfe-wrap .msf-nav .msf-btn[aria-disabled="true"] {
    opacity: 0.45;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
    pointer-events: none;
}

.cio-codex-header .cio-btn,
.cio-codex-header .cio-btn-primary {
    padding: 10px 20px;
    font-size: 13px;
    min-height: 0;
    height: auto;
}

@media (max-width: 768px) {
    .cio-codex-header .cio-btn-primary {
        padding: 4px 14px;
        font-size: 10px;
        min-height: 24px;
        height: 24px;
    }
}

@media (max-width: 480px) {
    .cio-codex-header .cio-btn-primary {
        padding: 3px 12px;
        font-size: 9px;
        min-height: 22px;
        height: 22px;
    }
}
