/* ==========================================================
   CONNECT COMMERCE PREMIUM V1.0 — LOOP 002H MAXIMIZADO
   Store + Carrinho + Registro de Domínio + Checkout
   Escopo visual/UX. Não altera preços, catálogo, rotas ou lógica WHMCS.
   ========================================================== */

body.connect-theme.template-products,
body.connect-theme.template-viewcart,
body.connect-theme.template-domainregister {
    --cc-surface:#ffffff;
    --cc-surface-soft:#f7faff;
    --cc-border:#dce6f1;
    --cc-text:#15324f;
    --cc-muted:#60758a;
    --cc-primary:#0664dc;
    --cc-primary-2:#0b74ff;
    --cc-navy:#07172f;
    --cc-success:#157347;
    --cc-danger:#b42318;
    --cc-shadow:0 14px 38px rgba(7,37,77,.07);
}

body.connect-theme.template-products #main-body,
body.connect-theme.template-viewcart #main-body,
body.connect-theme.template-domainregister #main-body {
    background:
        radial-gradient(circle at 92% 3%,rgba(22,135,255,.06),transparent 24%),
        #f5f8fc;
}

/* Cabeçalhos e hierarquia */
body.connect-theme.template-products .header-lined,
body.connect-theme.template-viewcart .header-lined,
body.connect-theme.template-domainregister .header-lined {
    margin-bottom:20px;
}

body.connect-theme.template-products .header-lined h1,
body.connect-theme.template-viewcart .header-lined h1,
body.connect-theme.template-domainregister .header-lined h1 {
    color:#0a2140;
    font-weight:900;
    letter-spacing:-.025em;
}

/* Estrutura do carrinho/store */
body.connect-theme #order-standard_cart {
    color:var(--cc-text);
}

body.connect-theme #order-standard_cart .cart-sidebar .panel,
body.connect-theme #order-standard_cart .cart-sidebar .card,
body.connect-theme #order-standard_cart .cart-sidebar .list-group,
body.connect-theme #order-standard_cart .view-cart-items,
body.connect-theme #order-standard_cart .summary-container,
body.connect-theme #order-standard_cart .domain-checker-container,
body.connect-theme #order-standard_cart .product,
body.connect-theme #order-standard_cart .product-info,
body.connect-theme #order-standard_cart .product-configurable-options,
body.connect-theme #order-standard_cart .domain-configure-container {
    border:1px solid var(--cc-border)!important;
    border-radius:15px!important;
    box-shadow:var(--cc-shadow)!important;
}

/* Sidebar consistente */
body.connect-theme #order-standard_cart .cart-sidebar .panel-heading,
body.connect-theme #order-standard_cart .cart-sidebar .card-header {
    min-height:46px;
    display:flex;
    align-items:center;
    padding:12px 14px!important;
    border-bottom:1px solid #e6edf5!important;
    background:linear-gradient(180deg,#fbfdff,#f5f9fd)!important;
    color:#153656!important;
    font-size:12px!important;
    font-weight:900!important;
}

body.connect-theme #order-standard_cart .cart-sidebar .list-group-item,
body.connect-theme #order-standard_cart .cart-sidebar a {
    min-height:44px;
    display:flex;
    align-items:center;
    gap:8px;
    padding-top:10px!important;
    padding-bottom:10px!important;
    color:#39536e!important;
    line-height:1.35!important;
}

body.connect-theme #order-standard_cart .cart-sidebar a:hover,
body.connect-theme #order-standard_cart .cart-sidebar a:focus-visible,
body.connect-theme #order-standard_cart .cart-sidebar .active > a {
    background:#edf5ff!important;
    color:#075fcf!important;
}

/* Progresso da compra */
body.connect-theme .connect-order-progress {
    margin-bottom:18px;
    border:1px solid var(--cc-border)!important;
    border-radius:15px!important;
    background:#fff!important;
    box-shadow:0 9px 26px rgba(7,37,77,.045)!important;
}

body.connect-theme .connect-order-progress li {
    color:#536b84;
}

body.connect-theme .connect-order-progress li.is-active {
    color:#075fcf;
    font-weight:850;
}

/* STORE: cards de produto */
body.connect-theme #order-standard_cart .products .product {
    overflow:hidden;
    border-color:var(--cc-border)!important;
    background:#fff!important;
    box-shadow:var(--cc-shadow)!important;
}

body.connect-theme #order-standard_cart .products .product:hover {
    transform:translateY(-2px);
    border-color:#b7d3f1!important;
    box-shadow:0 20px 46px rgba(7,63,126,.10)!important;
}

body.connect-theme #order-standard_cart .products .product header {
    min-height:74px!important;
    padding:16px 18px!important;
    background:
        radial-gradient(circle at 92% 15%,rgba(24,200,232,.14),transparent 28%),
        linear-gradient(135deg,#061329,#0a315f)!important;
    color:#fff!important;
    font-weight:900!important;
}

body.connect-theme #order-standard_cart .products .product .product-desc {
    color:#5f7489!important;
}

body.connect-theme #order-standard_cart .products .product footer {
    border-top:1px solid #e7edf4!important;
    background:#fbfdff!important;
}

body.connect-theme #order-standard_cart .products .product .product-pricing .price {
    color:#071f3d!important;
    font-weight:900!important;
}

body.connect-theme #order-standard_cart .products .product .btn-order-now,
body.connect-theme #order-standard_cart .btn-checkout,
body.connect-theme #order-standard_cart .btn-add-to-cart,
body.connect-theme #order-standard_cart .btn-primary,
body.connect-theme #order-standard_cart .btn-success {
    min-height:44px;
    border-color:#075fcf!important;
    border-radius:9px!important;
    background:linear-gradient(180deg,#1688ff,#0664dc)!important;
    color:#fff!important;
    font-weight:850!important;
    box-shadow:0 9px 22px rgba(11,116,255,.16);
}

body.connect-theme #order-standard_cart .products .product .btn-order-now:hover,
body.connect-theme #order-standard_cart .btn-checkout:hover,
body.connect-theme #order-standard_cart .btn-add-to-cart:hover,
body.connect-theme #order-standard_cart .btn-primary:hover,
body.connect-theme #order-standard_cart .btn-success:hover {
    background:linear-gradient(180deg,#0f7ce9,#0759c7)!important;
}

/* DOMÍNIOS */
body.connect-theme.template-domainregister #order-standard_cart .domain-checker-container {
    overflow:visible!important;
    background:#fff!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg {
    padding:28px 24px!important;
    border-radius:15px!important;
    background:
        radial-gradient(circle at 90% 20%,rgba(22,199,232,.12),transparent 26%),
        linear-gradient(135deg,#07172f,#0b3d76)!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg h2,
body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg p,
body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg label {
    color:#fff!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg .input-group {
    max-width:790px!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-checker-result-headline {
    margin-top:14px;
    padding:14px 16px!important;
    border-radius:11px!important;
    font-weight:800;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-available,
body.connect-theme.template-domainregister #order-standard_cart .domain-checker-result-headline.domain-available {
    border-color:#b7e3c8!important;
    background:#eefaf3!important;
    color:#157347!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-unavailable,
body.connect-theme.template-domainregister #order-standard_cart .domain-checker-result-headline.domain-unavailable {
    border-color:#efc2c2!important;
    background:#fff4f4!important;
    color:#b42318!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-suggestions,
body.connect-theme.template-domainregister #order-standard_cart .domain-pricing {
    border:1px solid var(--cc-border)!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:var(--cc-shadow)!important;
}

body.connect-theme.template-domainregister #order-standard_cart .domain-suggestion {
    min-height:60px;
}

/* CARRINHO */
body.connect-theme.template-viewcart #order-standard_cart .view-cart-items-header {
    padding:14px 16px!important;
    border-bottom:1px solid #e5edf5!important;
    background:linear-gradient(180deg,#fbfdff,#f4f8fc)!important;
    color:#153656!important;
    font-weight:900!important;
}

body.connect-theme.template-viewcart #order-standard_cart .view-cart-item {
    padding-top:17px!important;
    padding-bottom:17px!important;
}

body.connect-theme.template-viewcart #order-standard_cart .order-summary,
body.connect-theme.template-viewcart #order-standard_cart .summary-container {
    background:#fff!important;
}

body.connect-theme.template-viewcart #order-standard_cart .total-due-today {
    color:#071f3d!important;
    font-weight:900!important;
}

body.connect-theme.template-viewcart #order-standard_cart .btn-checkout {
    width:100%;
    min-height:50px;
    font-size:14px;
}

body.connect-theme.template-viewcart #order-standard_cart .view-cart-empty {
    padding:34px 20px!important;
    border:1px dashed #c9d8e8;
    border-radius:13px;
    background:#fbfdff;
}

/* Recomendações / upsell sem alterar conteúdo */
body.connect-theme #order-standard_cart .product-recommendations-container,
body.connect-theme #order-standard_cart .product-recommendation {
    border-color:var(--cc-border)!important;
    border-radius:13px!important;
}

/* Inputs e foco */
body.connect-theme #order-standard_cart input.form-control,
body.connect-theme #order-standard_cart select.form-control,
body.connect-theme #order-standard_cart textarea.form-control,
body.connect-theme #order-standard_cart .field {
    min-height:44px!important;
    border-color:#c7d5e4!important;
    background:#fff!important;
    color:#17324e!important;
}

body.connect-theme #order-standard_cart input.form-control:focus,
body.connect-theme #order-standard_cart select.form-control:focus,
body.connect-theme #order-standard_cart textarea.form-control:focus,
body.connect-theme #order-standard_cart .field:focus {
    border-color:#1687ff!important;
    box-shadow:0 0 0 3px rgba(22,135,255,.13)!important;
}

body.connect-theme #order-standard_cart a:focus-visible,
body.connect-theme #order-standard_cart button:focus-visible,
body.connect-theme #order-standard_cart input:focus-visible,
body.connect-theme #order-standard_cart select:focus-visible {
    outline:3px solid rgba(42,158,255,.55)!important;
    outline-offset:2px!important;
}

/* Nunca oculta ou reescreve preço/ciclo */
body.connect-theme #order-standard_cart .price,
body.connect-theme #order-standard_cart .product-pricing,
body.connect-theme #order-standard_cart .subtotal,
body.connect-theme #order-standard_cart .total-due-today {
    visibility:visible!important;
    opacity:1!important;
    font-variant-numeric:tabular-nums;
}

/* Tablet */
@media (max-width:991.98px) {
    body.connect-theme #order-standard_cart .cart-sidebar {
        margin-bottom:16px;
    }

    body.connect-theme #order-standard_cart .products .product footer {
        gap:12px;
    }
}

/* Mobile */
@media (max-width:767.98px) {
    body.connect-theme.template-products #main-body,
    body.connect-theme.template-viewcart #main-body,
    body.connect-theme.template-domainregister #main-body {
        padding-top:18px!important;
    }

    body.connect-theme #order-standard_cart .products .product footer {
        display:grid!important;
        grid-template-columns:1fr!important;
    }

    body.connect-theme #order-standard_cart .products .product .btn-order-now,
    body.connect-theme #order-standard_cart .btn-add-to-cart,
    body.connect-theme #order-standard_cart .btn-checkout {
        width:100%!important;
    }

    body.connect-theme.template-domainregister #order-standard_cart .domain-checker-bg {
        padding:20px 14px!important;
    }

    body.connect-theme #order-standard_cart .form-control,
    body.connect-theme #order-standard_cart input,
    body.connect-theme #order-standard_cart select {
        font-size:16px!important;
    }
}

@media (max-width:430px) {
    body.connect-theme #order-standard_cart .view-cart-items,
    body.connect-theme #order-standard_cart .summary-container,
    body.connect-theme #order-standard_cart .product,
    body.connect-theme #order-standard_cart .domain-checker-container {
        border-radius:12px!important;
    }

    body.connect-theme #order-standard_cart .view-cart-item {
        overflow-wrap:anywhere;
    }
}

@media (prefers-contrast: more) {
    body.connect-theme #order-standard_cart .product,
    body.connect-theme #order-standard_cart .view-cart-items,
    body.connect-theme #order-standard_cart .summary-container,
    body.connect-theme #order-standard_cart .domain-checker-container {
        border-width:2px!important;
    }
}

@media (forced-colors: active) {
    body.connect-theme #order-standard_cart .product,
    body.connect-theme #order-standard_cart .view-cart-items,
    body.connect-theme #order-standard_cart .summary-container,
    body.connect-theme #order-standard_cart .domain-checker-container,
    body.connect-theme #order-standard_cart .btn {
        border:1px solid CanvasText!important;
        background:Canvas!important;
        color:CanvasText!important;
        box-shadow:none!important;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.connect-theme #order-standard_cart *,
    body.connect-theme #order-standard_cart *::before,
    body.connect-theme #order-standard_cart *::after {
        transition:none!important;
        animation:none!important;
    }
}
