/* =====================================================
   RJHOSTING DOMAIN CHECKER – DEFINITIEVE CSS
===================================================== */

/* =========================
   WRAPPER
========================= */
.rjhosting-domain-checker {
    width: 100%;
    margin: 20px auto;
    padding: 0;
}

/* =========================
   INPUT + BUTTON (FIX)
========================= */
.rjhosting-input-wrapper {
    display: flex !important;
    align-items: stretch !important;
    gap: 12px;
    width: 100%;
}

.rjhosting-domain-checker input[name="domain"] {
    flex: 1 1 auto;
    width: 100%;
    height: 52px;
    padding: 0 16px;
    font-size: 16px;
    border: 1px solid #cfcfcf;
    border-radius: 8px;
    box-sizing: border-box;
}

.rjhosting-domain-checker input[name="domain"]:focus {
    border-color: #7aa7c7;
    outline: none;
}

/* BUTTON – HARD OVERRIDE THEME */
.rjhosting-domain-checker button[type="submit"] {
    flex: 0 0 auto;
    height: 52px;
    padding: 0 22px;
    font-size: 16px;
    line-height: 52px;
    border-radius: 8px;
    border: 0;
    cursor: pointer;
    background: #0073aa;
    color: #fff;
    white-space: nowrap;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.rjhosting-domain-checker button[type="submit"]:hover {
    background: #005d8f;
}

/* =========================
   RESULT BLOK
========================= */
.rjhosting-result {
    display: none;
    margin: 14px 0;
    padding: 14px 16px;
    border-radius: 8px;
    border: 1px solid #e5e5e5;
    background: #fafafa;
    font-size: 15px;
    line-height: 1.4;
}

.rjhosting-result.is-visible {
    display: block;
}

.rjhosting-result.available {
    background: #e7f7ec;
    border-color: #b7e3c4;
    color: #1d7a3a;
}

.rjhosting-result.unavailable {
    background: #fdeaea;
    border-color: #f3b3b3;
    color: #a12b2b;
}

/* =========================
   DOMAIN OFFER
========================= */
.rjhosting-domain-offer {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.rjhosting-domain-offer .ext {
    font-weight: 700;
}

.rjhosting-domain-offer .price {
    font-weight: 700;
    color: #0073aa;
}

/* =========================
   ADD TO CART BUTTON
========================= */
.rjhosting-add-to-cart {
    margin-left: auto;
    padding: 10px 14px;
    border-radius: 8px;
    border: 0;
    cursor: pointer;
    background: #0073aa;
    color: #fff;
    font-size: 14px;
}

.rjhosting-add-to-cart:hover {
    background: #005d8f;
}

.rjhosting-add-to-cart:disabled {
    opacity: .7;
    cursor: not-allowed;
}

/* =========================
   CART OPSCHONING
========================= */
.woocommerce-cart .product-thumbnail,
.woocommerce-cart td.product-thumbnail {
    display: none !important;
}

.woocommerce-cart .cart_item {
    padding: 12px 0;
}

.woocommerce-cart .product-name {
    font-size: 15px;
    line-height: 1.4;
}

/* =========================
   HOSTING SELECT
========================= */
.rjhosting-hosting {
    margin-top: 8px;
    padding: 10px 12px;
    background: #f6f6f6;
    border-left: 4px solid #8fbf26;
    border-radius: 4px;
}

.rjhosting-select-hosting {
    width: 100%;
    max-width: 260px;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid #cfcfcf;
}

/* =========================
   MOBILE
========================= */
@media (max-width: 640px) {
    .rjhosting-input-wrapper {
        flex-direction: column;
    }

    .rjhosting-domain-checker button[type="submit"] {
        width: 100%;
    }

    .rjhosting-add-to-cart {
        width: 100%;
        margin-left: 0;
    }
}
