/* =======================================================
   domain.css  — Injected into RunHosting domain search iframe
   Host at: https://host.learntiv.com.ng/domain.css
   ⚠ Quirks Mode safe
   ✓ AUTO-HEIGHT: table grows to fit ALL content
   ✓ Bright domain name color (Cyan/Blue)
   ✓ Fully mobile responsive
   ✓ Order/Register button styled prominently
   =======================================================  */

@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@600;700&family=Inter:wght@400;500;600;700&display=swap');

/* ── Page ── */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    background: #0a1224 !important;
    color: #e2e8f0 !important;
    margin: 0 !important;
    padding: 28px 24px 40px !important;
    min-height: 100vh !important;
    height: auto !important;
}

/* ══════════════════════════════════════
   SEARCH FORM
══════════════════════════════════════ */
table.domain_search_tbl,
.domain_search_tbl {
    width: 100% !important;
    border: none !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: transparent !important;
    display: table !important;
}

table.domain_search_tbl td,
.domain_search_tbl td {
    border: none !important;
    padding: 0 !important;
    vertical-align: middle !important;
    background: transparent !important;
    display: table-cell !important;
}

/* Title */
td.domain_search_label,
.domain_search_label {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 1.35rem !important;
    font-weight: 700 !important;
    color: #f1f5f9 !important;
    letter-spacing: -.4px !important;
    padding: 0 0 .5rem !important;
    line-height: 1.2 !important;
    display: block !important;
}

/* Subtitle */
td.domain_search_text,
.domain_search_text {
    font-size: .85rem !important;
    color: #94a3b8 !important;
    padding: 0 0 1.1rem !important;
    line-height: 1.6 !important;
    display: block !important;
}

/* ── Search Row (input + select + button) ── */
.domain_search_tbl tr:last-child td {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    width: 100% !important;
}

/* Input field */
input.domain_search_input,
input[type="text"].domain_search_input {
    font-family: 'Inter', sans-serif !important;
    font-size: 1.05rem !important;
    color: #f1f5f9 !important;
    background: #1a2540 !important;
    border: 1.5px solid #2a3a5c !important;
    border-right: none !important;
    border-radius: 12px 0 0 12px !important;
    padding: .85rem 1.1rem !important;
    outline: none !important;
    height: auto !important;
    line-height: 1.5 !important;
    transition: border-color .18s, box-shadow .18s, background .18s !important;
    margin: 0 !important;
    flex: 1 !important;
    min-width: 120px !important;
}
input.domain_search_input:focus {
    border-color: #6366f1 !important;
    background: #1f2d4a !important;
    box-shadow: 0 0 0 3px rgba(99,102,241,.13) !important;
    z-index: 1 !important;
    position: relative !important;
}
input.domain_search_input::placeholder { color: #64748b !important; }

/* TLD select */
select.domain_search_select,
select.domain_search_tld {
    font-family: 'Inter', sans-serif !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    color: #f1f5f9 !important;
    background: #1f2d4a !important;
    border: 1.5px solid #2a3a5c !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    padding: .85rem .6rem !important;
    outline: none !important;
    height: auto !important;
    cursor: pointer !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
    min-width: 70px !important;
}
select.domain_search_select:focus {
    border-color: #6366f1 !important;
    background: #253559 !important;
}
select.domain_search_select option {
    background: #0a1224 !important;
    color: #f1f5f9 !important;
}

/* Submit */
input.domain_search_submit,
input[type="submit"].domain_search_submit {
    font-family: 'Inter', sans-serif !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%) !important;
    border: none !important;
    border-radius: 0 12px 12px 0 !important;
    padding: .85rem 1.5rem !important;
    height: auto !important;
    line-height: normal !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    box-shadow: 0 4px 14px rgba(79,70,229,.3) !important;
    transition: transform .15s, box-shadow .15s !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
}
input.domain_search_submit:hover {
    box-shadow: 0 6px 20px rgba(79,70,229,.42) !important;
}
input.domain_search_submit:active { transform: scale(.98) !important; }

/* ══════════════════════════════════════
   RESULTS SECTION — AUTO HEIGHT
   Table grows with content — NO fixed heights!
══════════════════════════════════════ */

/* Outer results wrapper — height is auto */
table.domain_search_results_tbl,
.domain_search_results_tbl {
    width: 100% !important;
    border-collapse: collapse !important;
    border: none !important;
    margin-top: 1.75rem !important;
    background: #0f1a33 !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
    display: table !important;
}

/* Every cell — dark background for readability */
.domain_search_results_tbl td,
table.domain_search_results_tbl td {
    font-family: 'Inter', sans-serif !important;
    font-size: .875rem !important;
    color: #e2e8f0 !important;
    padding: .9rem 1rem !important;
    border: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.06) !important;
    background: #0f1a33 !important;
    vertical-align: middle !important;
    height: auto !important;
    display: table-cell !important;
}

.domain_search_results_tbl tr,
.domain_search_results_tbl tr {
    display: table-row !important;
}

/* ── ORDER BUTTON ROW ── */
.domain_search_results_tbl tr.domain_search_order_row td,
.domain_search_results_tbl td.domain_search_order_td,
td.domain_search_order_td {
    background: linear-gradient(135deg, #1a2d55 0%, #243b66 100%) !important;
    border-top: 3px solid #6366f1 !important;
    border-bottom: 2px solid rgba(99,102,241,0.3) !important;
    padding: 1.1rem 1rem !important;
    text-align: center !important;
}

/* ── REGISTER / ORDER BUTTONS ── */
.domain_search_order_btn,
a.domain_search_order_btn,
input.domain_search_order_btn,
.domain_search_results_tbl a[href*="order"],
.domain_search_results_tbl a[href*="signup"],
.domain_search_results_tbl input[type="submit"],
.domain_search_results_tbl input[type="button"] {
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #059669 0%, #10b981 100%) !important;
    border: none !important;
    border-radius: 9px !important;
    padding: .6rem 1.2rem !important;
    text-decoration: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    box-shadow: 0 3px 10px rgba(16,185,129,.28) !important;
    transition: transform .15s, box-shadow .15s !important;
    line-height: normal !important;
    height: auto !important;
}
.domain_search_order_btn:hover,
a.domain_search_order_btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 18px rgba(16,185,129,.42) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}
.domain_search_order_btn:active { transform: scale(.98) !important; }

/* ── HEADER ROW (Register / Transfer labels) ── */
td.domain_search_register_label,
td.domain_search_transfer_label,
.domain_search_register_label,
.domain_search_transfer_label {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    text-align: center !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    background: linear-gradient(135deg, #2a3d6e 0%, #3b5490 100%) !important;
    padding: .85rem 1rem !important;
    border: none !important;
}

/* ── RESULT ROWS ── */

/* Alternating rows - subtle variation */
.domain_search_results_tbl tr:nth-child(even) td {
    background: #0d1730 !important;
}
.domain_search_results_tbl tr:nth-child(odd) td {
    background: #0f1a33 !important;
}
/* Preserve header row colour */
.domain_search_results_tbl tr:first-child td {
    background: linear-gradient(135deg, #2a3d6e, #3b5490) !important;
}
.domain_search_results_tbl tr:hover td {
    background: #1a2d55 !important;
    transition: background .12s !important;
}
/* Don't tint header on hover */
.domain_search_results_tbl tr:first-child:hover td {
    background: linear-gradient(135deg, #2a3d6e, #3b5490) !important;
}

/* Available domain row — highlight in green */
.domain_search_results_tbl tr.domain_search_available_row td,
.domain_search_results_tbl td.domain_search_available_row {
    background: #0a281a !important;
    border-left: 3px solid #34d399 !important;
}
.domain_search_results_tbl tr.domain_search_available_row:hover td {
    background: #0f3322 !important;
}

/* ══════════════════════════════════════
   ★ DOMAIN NAME — BRIGHT COLOR ★
   Searched domain appears in bright Cyan/Blue
══════════════════════════════════════ */

/* Domain name cell — BRIGHT CYAN/BLUE */
td.domain_search_domain_name,
.domain_search_domain_name {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
    color: #22d3ee !important;  /* Bright Cyan */
    text-shadow: 0 0 20px rgba(34, 211, 238, 0.15) !important;
    letter-spacing: -0.3px !important;
}

/* Alternative: If you prefer bright blue instead, use: */
/* color: #60a5fa !important;  Bright Blue */
/* Or for Purple: color: #a78bfa !important; */
/* Or for Green: color: #34d399 !important; */

/* Domain name hover effect */
td.domain_search_domain_name:hover,
.domain_search_domain_name:hover {
    color: #67e8f9 !important;
    text-shadow: 0 0 30px rgba(34, 211, 238, 0.3) !important;
    transition: all .2s ease !important;
}

/* ── Available status ── */
td.domain_search_available,
.domain_search_available {
    color: #34d399 !important;
    font-weight: 600 !important;
    font-size: .82rem !important;
}

/* ── Taken status ── */
td.domain_search_taken,
.domain_search_taken {
    color: #64748b !important;
    font-weight: 500 !important;
    font-size: .82rem !important;
    text-decoration: line-through !important;
    opacity: .7 !important;
}

/* ── Price ── */
td.domain_search_price,
.domain_search_price {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: .9rem !important;
    font-weight: 700 !important;
    color: #818cf8 !important;
}

/* ── Transfer button ── */
.domain_search_transfer_btn,
a.domain_search_transfer_btn {
    display: inline-block !important;
    font-family: 'Inter', sans-serif !important;
    font-size: .78rem !important;
    font-weight: 600 !important;
    color: #a5b4fc !important;
    background: rgba(99,102,241,0.15) !important;
    border: 1px solid rgba(99,102,241,0.3) !important;
    border-radius: 8px !important;
    padding: .45rem .9rem !important;
    text-decoration: none !important;
    transition: background .2s !important;
}
.domain_search_transfer_btn:hover { 
    background: rgba(99,102,241,0.25) !important;
    color: #c7d2fe !important;
}

/* ══════════════════════════════════════
   CART / SUMMARY ROW
══════════════════════════════════════ */
.signupFormViewCartBox,
.domain_search_cart_box,
td.domain_search_cart {
    font-family: 'Inter', sans-serif !important;
    font-size: .875rem !important;
    font-weight: 600 !important;
    color: #f1f5f9 !important;
    background: linear-gradient(135deg, #1a2d55, #243b66) !important;
    border: 1.5px solid rgba(99,102,241,0.3) !important;
    border-radius: 12px !important;
    padding: 1rem 1.25rem !important;
    margin-bottom: 1rem !important;
    line-height: 1.6 !important;
}

.signupFormViewCartLink {
    color: #818cf8 !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}
.signupFormViewCartLink:hover {
    color: #a5b4fc !important;
    text-decoration: underline !important;
}

/* ── Error ── */
.domain_search_error,
td.domain_search_error,
.domain_search_error_msg {
    font-family: 'Inter', sans-serif !important;
    font-size: .84rem !important;
    font-weight: 500 !important;
    color: #fca5a5 !important;
    background: rgba(239,68,68,0.1) !important;
    border: 1px solid rgba(239,68,68,0.25) !important;
    border-left: 3px solid #ef4444 !important;
    border-radius: 10px !important;
    padding: .75rem 1rem !important;
    margin: .75rem 0 !important;
    line-height: 1.5 !important;
}

/* ── Info note ── */
.domain_search_info,
td.domain_search_info {
    font-family: 'Inter', sans-serif !important;
    font-size: .82rem !important;
    color: #7dd3fc !important;
    background: rgba(14,165,233,0.1) !important;
    border: 1px solid rgba(14,165,233,0.2) !important;
    border-left: 3px solid #0ea5e9 !important;
    border-radius: 10px !important;
    padding: .75rem 1rem !important;
    margin: .75rem 0 !important;
}

/* ── Success message ── */
.domain_search_success {
    font-family: 'Inter', sans-serif !important;
    font-size: .84rem !important;
    color: #6ee7b7 !important;
    background: rgba(16,185,129,0.1) !important;
    border: 1px solid rgba(16,185,129,0.2) !important;
    border-left: 3px solid #10b981 !important;
    border-radius: 10px !important;
    padding: .75rem 1rem !important;
    margin: .75rem 0 !important;
}

/* ══════════════════════════════════════
   IFRAME HEIGHT OVERRIDE
   Force iframe to expand to content height
══════════════════════════════════════ */

html, body {
    height: auto !important;
    min-height: auto !important;
}

.domain_search_results_tbl {
    overflow: visible !important;
}

/* ══════════════════════════════════════
   RESPONSIVE — FULL MOBILE SUPPORT
══════════════════════════════════════ */

@media (max-width: 768px) {
    body {
        padding: 16px 14px 32px !important;
    }

    /* ── Search Row Stack on Mobile ── */
    .domain_search_tbl tr:last-child td {
        flex-direction: column !important;
        gap: 8px !important;
    }

    input.domain_search_input,
    input[type="text"].domain_search_input {
        border-radius: 12px !important;
        border: 1.5px solid #2a3a5c !important;
        font-size: .95rem !important;
        padding: .75rem .9rem !important;
        flex: 1 1 100% !important;
        min-width: 100% !important;
    }

    select.domain_search_select,
    select.domain_search_tld {
        border-radius: 12px !important;
        border: 1.5px solid #2a3a5c !important;
        font-size: .85rem !important;
        padding: .75rem .9rem !important;
        flex: 1 1 100% !important;
        min-width: 100% !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: right 1rem center !important;
        padding-right: 2.5rem !important;
        background-size: 12px !important;
    }

    input.domain_search_submit,
    input[type="submit"].domain_search_submit {
        border-radius: 12px !important;
        font-size: .9rem !important;
        padding: .8rem 1.2rem !important;
        flex: 1 1 100% !important;
        min-width: 100% !important;
        width: 100% !important;
    }

    /* ── Results Table Mobile ── */
    td.domain_search_label,
    .domain_search_label {
        font-size: 1.1rem !important;
    }

    td.domain_search_text,
    .domain_search_text {
        font-size: .8rem !important;
    }

    .domain_search_results_tbl td,
    table.domain_search_results_tbl td {
        font-size: .75rem !important;
        padding: .6rem .5rem !important;
    }

    .domain_search_results_tbl {
        border-radius: 12px !important;
        overflow-x: auto !important;
        display: block !important;
        width: 100% !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .domain_search_results_tbl thead {
        display: table-header-group !important;
    }

    .domain_search_results_tbl tbody {
        display: table-row-group !important;
    }

    .domain_search_results_tbl tr {
        display: table-row !important;
    }

    .domain_search_results_tbl td {
        display: table-cell !important;
        white-space: nowrap !important;
        min-width: 60px !important;
    }

    /* First column sticky on mobile */
    .domain_search_results_tbl td:first-child {
        position: sticky !important;
        left: 0 !important;
        background: #0f1a33 !important;
        z-index: 2 !important;
        min-width: 80px !important;
    }

    .domain_search_results_tbl tr:nth-child(even) td:first-child {
        background: #0d1730 !important;
    }

    .domain_search_results_tbl tr:hover td:first-child {
        background: #1a2d55 !important;
    }

    /* ── Domain name on mobile — keep it bright! ── */
    td.domain_search_domain_name,
    .domain_search_domain_name {
        font-size: .8rem !important;
    }

    /* ── Order buttons on mobile ── */
    .domain_search_order_btn,
    a.domain_search_order_btn {
        font-size: .7rem !important;
        padding: .45rem .75rem !important;
    }

    /* ── Cart box on mobile ── */
    .signupFormViewCartBox,
    .domain_search_cart_box,
    td.domain_search_cart {
        font-size: .78rem !important;
        padding: .75rem .85rem !important;
    }

    td.domain_search_register_label,
    td.domain_search_transfer_label,
    .domain_search_register_label,
    .domain_search_transfer_label {
        font-size: .65rem !important;
        padding: .6rem .5rem !important;
    }
}

@media (max-width: 480px) {
    body {
        padding: 12px 10px 24px !important;
    }

    input.domain_search_input,
    input[type="text"].domain_search_input {
        font-size: .85rem !important;
        padding: .65rem .75rem !important;
    }

    select.domain_search_select,
    select.domain_search_tld {
        font-size: .8rem !important;
        padding: .65rem .75rem !important;
    }

    input.domain_search_submit,
    input[type="submit"].domain_search_submit {
        font-size: .8rem !important;
        padding: .7rem 1rem !important;
    }

    td.domain_search_label,
    .domain_search_label {
        font-size: .95rem !important;
    }

    .domain_search_results_tbl td,
    table.domain_search_results_tbl td {
        font-size: .68rem !important;
        padding: .45rem .35rem !important;
        min-width: 45px !important;
    }

    .domain_search_results_tbl td:first-child {
        min-width: 60px !important;
        padding-left: .5rem !important;
    }

    td.domain_search_domain_name,
    .domain_search_domain_name {
        font-size: .72rem !important;
    }

    td.domain_search_price,
    .domain_search_price {
        font-size: .75rem !important;
    }

    .domain_search_order_btn,
    a.domain_search_order_btn {
        font-size: .62rem !important;
        padding: .35rem .6rem !important;
        border-radius: 6px !important;
    }

    .signupFormViewCartBox,
    .domain_search_cart_box,
    td.domain_search_cart {
        font-size: .7rem !important;
        padding: .6rem .65rem !important;
        border-radius: 8px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    input.domain_search_submit,
    .domain_search_order_btn,
    a.domain_search_order_btn {
        transition: none !important;
    }
}