/* AWEB HostBill Domain Search 0.4.5
   Modern responsive cards: blue search, green available, red unavailable.
*/

.aweb-domain-search,
.aweb-domain-search * { box-sizing:border-box; }

.aweb-domain-search {
    --aweb-blue:#1268f3;
    --aweb-blue-2:#1da7ee;
    --aweb-green:#169b35;
    --aweb-green-dark:#087b26;
    --aweb-green-bg:#f1fbf3;
    --aweb-green-border:#d5edd9;
    --aweb-red:#d71938;
    --aweb-red-bg:#fff4f5;
    --aweb-red-border:#f3cbd1;
    --aweb-text:#17233d;
    --aweb-muted:#6d788b;
    width:100%;
    max-width:100%;
    font-size:16px;
    line-height:1.45;
    color:var(--aweb-text);
}

.aweb-domain-form {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    padding:18px;
    margin:0 0 18px;
    background:#fff;
    border:1px solid rgba(23,35,61,.08);
    border-radius:18px;
    box-shadow:0 8px 26px rgba(23,35,61,.08);
}

.aweb-domain-label {
    position:absolute!important;
    width:1px!important;height:1px!important;
    padding:0!important;margin:-1px!important;
    overflow:hidden!important;clip:rect(0,0,0,0)!important;
    white-space:nowrap!important;border:0!important;
}

.aweb-domain-input,
.aweb-domain-submit,
.aweb-domain-limit,
.aweb-domain-more,
.aweb-domain-action { font:inherit; }

.aweb-domain-input {
    width:100%;
    min-width:0;
    min-height:56px;
    padding:13px 18px;
    border:1px solid #d8dee8;
    border-radius:11px;
    background:#fff;
    color:var(--aweb-text);
    font-size:16px;
    outline:none;
    box-shadow:inset 0 1px 2px rgba(0,0,0,.02);
    transition:border-color .18s ease,box-shadow .18s ease;
}

.aweb-domain-input:focus {
    border-color:var(--aweb-blue);
    box-shadow:0 0 0 4px rgba(18,104,243,.12);
}

.aweb-domain-input::placeholder { color:#8a94a6; opacity:1; }

.aweb-domain-submit {
    min-width:165px;
    min-height:56px;
    padding:12px 25px;
    border:0;
    border-radius:11px;
    background:linear-gradient(100deg,var(--aweb-blue-2),var(--aweb-blue));
    color:#fff;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 6px 16px rgba(18,104,243,.18);
    transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease;
}

.aweb-domain-submit:hover {
    transform:translateY(-1px);
    box-shadow:0 8px 20px rgba(18,104,243,.24);
}

.aweb-domain-submit:disabled,
.aweb-domain-more:disabled { cursor:wait; opacity:.65; }

.aweb-domain-options {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    margin:0 0 20px;
    font-weight:600;
}

.aweb-domain-options label {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:10px;
    width:100%;
}

.aweb-domain-limit {
    min-width:90px;
    min-height:48px;
    padding:8px 38px 8px 14px;
    border:1px solid #d8dee8;
    border-radius:10px;
    background:#fff;
    color:var(--aweb-text);
    font-size:16px;
}

.aweb-domain-results { width:100%; }

.aweb-domain-result {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
    width:100%;
    min-width:0;
    padding:20px 22px;
    margin:0 0 14px;
    border:1px solid #e2e6ec;
    border-radius:16px;
    background:#fff;
    box-shadow:0 3px 12px rgba(23,35,61,.035);
    transition:transform .16s ease,box-shadow .16s ease;
}

.aweb-domain-result:hover {
    transform:translateY(-1px);
    box-shadow:0 7px 20px rgba(23,35,61,.07);
}

.aweb-domain-result.is-available {
    background:linear-gradient(90deg,var(--aweb-green-bg),#fbfffc);
    border-color:var(--aweb-green-border);
}

.aweb-domain-result.is-unavailable {
    background:linear-gradient(90deg,var(--aweb-red-bg),#fffafa);
    border-color:var(--aweb-red-border);
}

.aweb-domain-result.is-requested {
    border-width:2px;
    box-shadow:0 6px 20px rgba(23,35,61,.08);
}

.aweb-domain-main { min-width:0; }

.aweb-domain-name {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
    min-width:0;
    font-size:18px;
    font-weight:800;
    color:var(--aweb-text);
    overflow-wrap:anywhere;
}

.aweb-domain-status { margin-top:6px; }

.aweb-domain-status-text {
    display:inline-flex;
    align-items:center;
    padding:3px 9px;
    border-radius:999px;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.02em;
}

.is-available .aweb-domain-status-text {
    color:var(--aweb-green-dark);
    background:#daf3df;
}

.is-unavailable .aweb-domain-status-text {
    color:var(--aweb-red);
    background:#ffe0e4;
}

.aweb-domain-selected {
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:3px 9px;
    border:0;
    border-radius:999px;
    background:#e8eef9;
    color:#52617a;
    font-size:11px;
    font-weight:800;
    line-height:1.2;
}

.aweb-domain-side {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:18px;
    min-width:0;
}

.aweb-domain-price {
    white-space:nowrap;
    font-size:17px;
    font-weight:800;
    font-variant-numeric:tabular-nums;
}

.is-available .aweb-domain-price { color:var(--aweb-green-dark); }
.is-unavailable .aweb-domain-price { color:var(--aweb-red); }

.aweb-domain-action {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:145px;
    min-height:48px;
    padding:10px 18px;
    border-radius:10px;
    text-decoration:none!important;
    font-weight:800;
    text-align:center;
    white-space:nowrap;
    transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}

.aweb-domain-action.is-register {
    border:1px solid var(--aweb-green);
    background:var(--aweb-green);
    color:#fff!important;
    box-shadow:0 5px 13px rgba(22,155,53,.15);
}

.aweb-domain-action.is-register::before {
    content:"✓";
    margin-right:8px;
    font-size:18px;
}

.aweb-domain-action.is-transfer {
    border:1px solid var(--aweb-red);
    background:transparent;
    color:var(--aweb-red)!important;
}

.aweb-domain-action.is-transfer::before {
    content:"⇄";
    margin-right:8px;
    font-size:20px;
    line-height:1;
}

.aweb-domain-action:hover { transform:translateY(-1px); }
.aweb-domain-action.is-register:hover { background:var(--aweb-green-dark); }
.aweb-domain-action.is-transfer:hover { background:#fff0f2; }

.aweb-domain-loading,
.aweb-domain-loading-more,
.aweb-domain-error {
    width:100%;
    padding:18px 12px;
    text-align:center;
    border-radius:12px;
}

.aweb-domain-error { color:var(--aweb-red); background:var(--aweb-red-bg); }

.aweb-domain-spinner {
    display:inline-block;
    width:18px;height:18px;
    border:2px solid currentColor;
    border-right-color:transparent;
    border-radius:50%;
    vertical-align:-4px;
    animation:aweb-domain-spin .7s linear infinite;
}

.aweb-domain-more {
    display:flex;
    align-items:center;
    justify-content:center;
    width:fit-content;
    min-width:230px;
    min-height:50px;
    margin:22px auto 0;
    padding:11px 24px;
    border:1.5px solid var(--aweb-blue);
    border-radius:10px;
    background:#fff;
    color:var(--aweb-blue);
    font-weight:800;
    cursor:pointer;
    transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease;
}

.aweb-domain-more::before {
    content:"+";
    margin-right:9px;
    font-size:24px;
    font-weight:500;
    line-height:1;
}

.aweb-domain-more:hover {
    background:var(--aweb-blue);
    color:#fff;
    transform:translateY(-1px);
    box-shadow:0 6px 15px rgba(18,104,243,.15);
}

.aweb-domain-more.is-loading::before { content:""; margin:0; }
.aweb-domain-more[hidden] { display:none!important; }

.aweb-domain-input:focus-visible,
.aweb-domain-submit:focus-visible,
.aweb-domain-limit:focus-visible,
.aweb-domain-more:focus-visible,
.aweb-domain-action:focus-visible {
    outline:3px solid rgba(18,104,243,.38);
    outline-offset:3px;
}

@keyframes aweb-domain-spin { to { transform:rotate(360deg); } }

@media (max-width:820px) {
    .aweb-domain-result {
        grid-template-columns:minmax(0,1fr);
        gap:14px;
    }
    .aweb-domain-side {
        width:100%;
        justify-content:space-between;
    }
    .aweb-domain-action { min-width:170px; }
}

@media (max-width:600px) {
    .aweb-domain-search { font-size:15px; }

    .aweb-domain-form {
        grid-template-columns:1fr;
        gap:10px;
        padding:14px;
        border-radius:16px;
    }

    .aweb-domain-input,
    .aweb-domain-submit {
        width:100%;
        min-height:54px;
    }

    .aweb-domain-submit { min-width:0; }

    .aweb-domain-options { margin-bottom:16px; }

    .aweb-domain-options label {
        display:grid;
        grid-template-columns:auto minmax(90px,1fr) auto;
        gap:10px;
        align-items:center;
    }

    .aweb-domain-limit {
        width:100%;
        min-width:90px;
    }

    .aweb-domain-result {
        padding:17px 16px;
        border-radius:15px;
    }

    .aweb-domain-name { font-size:18px; }

    .aweb-domain-side {
        display:grid;
        grid-template-columns:1fr;
        gap:12px;
    }

    .aweb-domain-price {
        text-align:right;
        white-space:normal;
        font-size:17px;
    }

    .aweb-domain-action {
        width:100%;
        min-width:0;
        min-height:50px;
    }

    .aweb-domain-more {
        width:min(100%,280px);
        min-width:0;
        min-height:50px;
        margin-top:20px;
    }
}

@media (max-width:380px) {
    .aweb-domain-options label {
        grid-template-columns:1fr;
    }
    .aweb-domain-price { text-align:left; }
}

@media (prefers-reduced-motion:reduce) {
    .aweb-domain-search *,
    .aweb-domain-search *::before,
    .aweb-domain-search *::after {
        scroll-behavior:auto!important;
        transition-duration:.01ms!important;
        animation-duration:.01ms!important;
        animation-iteration-count:1!important;
    }
}

/* 1.0.5 progressive HostBill-style checks */
.aweb-domain-result.is-pending {
    background:#fff;
    border-color:#e2e6ec;
}

.aweb-domain-result.is-error {
    background:#fff8ed;
    border-color:#f2d3a2;
}

.is-pending .aweb-domain-status-text {
    color:#52617a;
    background:#edf2f8;
    text-transform:none;
}

.is-pending .aweb-domain-status-text .aweb-domain-spinner {
    width:14px;
    height:14px;
    margin-right:6px;
    vertical-align:-2px;
}

.is-error .aweb-domain-status-text {
    color:#9b5a00;
    background:#fff0cf;
    text-transform:none;
}

.is-pending .aweb-domain-price { color:#52617a; }
.is-error .aweb-domain-price { color:#7a8496; }

.aweb-domain-premium {
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:3px 9px;
    border-radius:999px;
    background:#fff0c7;
    color:#8b5b00;
    font-size:11px;
    font-weight:900;
    line-height:1.2;
    text-transform:uppercase;
    letter-spacing:.03em;
}

.aweb-domain-na {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:145px;
    min-height:42px;
    padding:8px 14px;
    border-radius:9px;
    background:#b5bac6;
    color:#fff;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}

/* 1.0.7 WHOIS/RDAP secondary action */
.aweb-domain-actions {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    flex-wrap:wrap;
}

.aweb-domain-action.is-whois {
    min-width:92px;
    border:1px solid var(--aweb-blue);
    background:#fff;
    color:var(--aweb-blue)!important;
    cursor:pointer;
}

.aweb-domain-action.is-whois::before {
    content:"⌕";
    margin-right:7px;
    font-size:18px;
    line-height:1;
}

.aweb-domain-action.is-whois:hover {
    background:#eef5ff;
}

.aweb-domain-whois-modal {
    width:min(680px,calc(100vw - 28px));
    max-height:min(760px,calc(100vh - 40px));
    padding:0;
    border:0;
    border-radius:18px;
    background:#fff;
    color:var(--aweb-text);
    box-shadow:0 24px 70px rgba(23,35,61,.24);
    overflow:hidden;
}

.aweb-domain-whois-modal::backdrop {
    background:rgba(16,24,40,.48);
    backdrop-filter:blur(2px);
}

.aweb-domain-whois-card { min-width:0; }

.aweb-domain-whois-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:20px 22px;
    border-bottom:1px solid #e8edf4;
}

.aweb-domain-whois-title {
    display:block;
    font-size:18px;
    line-height:1.25;
}

.aweb-domain-whois-domain {
    margin-top:4px;
    color:var(--aweb-blue);
    font-weight:800;
    overflow-wrap:anywhere;
}

.aweb-domain-whois-close {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 38px;
    width:38px;
    height:38px;
    border:1px solid #dfe5ee;
    border-radius:10px;
    background:#fff;
    color:#465268;
    font:inherit;
    font-size:25px;
    line-height:1;
    cursor:pointer;
}

.aweb-domain-whois-close:hover { background:#f5f7fa; }

.aweb-domain-whois-body {
    max-height:calc(100vh - 180px);
    padding:20px 22px 24px;
    overflow:auto;
}

.aweb-domain-whois-loading,
.aweb-domain-whois-error {
    padding:16px;
    border-radius:12px;
    text-align:center;
}

.aweb-domain-whois-loading { background:#f5f8fc; color:#52617a; }
.aweb-domain-whois-error { background:var(--aweb-red-bg); color:var(--aweb-red); }

.aweb-domain-whois-method {
    display:inline-flex;
    margin-bottom:12px;
    padding:3px 8px;
    border-radius:999px;
    background:#eef5ff;
    color:var(--aweb-blue);
    font-size:11px;
    font-weight:900;
    letter-spacing:.03em;
}

.aweb-domain-whois-list { margin:0; }

.aweb-domain-whois-row {
    display:grid;
    grid-template-columns:minmax(125px,.42fr) minmax(0,1fr);
    gap:14px;
    padding:11px 0;
    border-bottom:1px solid #edf1f6;
}

.aweb-domain-whois-row:last-child { border-bottom:0; }
.aweb-domain-whois-row dt { margin:0; font-weight:800; color:#52617a; }
.aweb-domain-whois-row dd { margin:0; overflow-wrap:anywhere; }

@media (max-width:820px) {
    .aweb-domain-actions { justify-content:flex-end; }
    .aweb-domain-actions .aweb-domain-action { min-width:120px; }
}

@media (max-width:600px) {
    .aweb-domain-actions {
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
    }
    .aweb-domain-actions .aweb-domain-action { width:100%; min-width:0; }
    .aweb-domain-whois-row { grid-template-columns:1fr; gap:4px; }
}

@media (max-width:420px) {
    .aweb-domain-actions { grid-template-columns:1fr; }
}


/* 1.0.8 WHOIS singleton + fallback */
.aweb-domain-whois-note {
    padding: 14px 16px;
    border-radius: 12px;
    background: #f5f8fc;
    color: #52617a;
    line-height: 1.55;
}
.aweb-domain-whois-external {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 14px;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #d6e0ee;
    border-radius: 10px;
    background: #fff;
    color: #1769ff;
    font-weight: 800;
    text-decoration: none;
}
.aweb-domain-whois-external:hover { background: #f7faff; }

/* 1.0.11 / theme 2.0.194 — dark-theme component safety net.
   Dark selectors only; Light Theme declarations above remain unchanged. */
body.aweb-theme-dark [data-aweb-module="domain-search"] .aweb-domain-result .aweb-domain-name > .aweb-domain-premium,
body.aweb-theme-dark .aweb-native-domain-search .aweb-domain-result .aweb-domain-name > .aweb-domain-premium{
    background:rgba(245,158,11,.13)!important;
    border:1px solid rgba(251,191,36,.34)!important;
    color:#ffd98a!important;
    -webkit-text-fill-color:#ffd98a!important;
    box-shadow:0 0 14px rgba(245,158,11,.06)!important;
    text-shadow:none!important;
    opacity:1!important;
}
body.aweb-theme-dark .aweb-domain-whois-modal{background:#0b1c30!important;color:#c9d8e7!important;border:1px solid #27435f!important;box-shadow:0 28px 78px rgba(0,0,0,.52)!important;color-scheme:dark}
body.aweb-theme-dark .aweb-domain-whois-modal::backdrop{background:rgba(2,10,20,.72)!important;backdrop-filter:blur(3px)}
body.aweb-theme-dark .aweb-domain-whois-head{background:linear-gradient(180deg,#0e2239 0%,#0b1c30 100%)!important;border-bottom-color:#27435f!important}
body.aweb-theme-dark .aweb-domain-whois-title{color:#eef6ff!important;-webkit-text-fill-color:#eef6ff!important}
body.aweb-theme-dark .aweb-domain-whois-domain{color:#58a8ff!important;-webkit-text-fill-color:#58a8ff!important}
body.aweb-theme-dark .aweb-domain-whois-close{background:#112941!important;border-color:#355472!important;color:#d9e8f6!important;-webkit-text-fill-color:#d9e8f6!important}
body.aweb-theme-dark .aweb-domain-whois-close:hover,body.aweb-theme-dark .aweb-domain-whois-close:focus{background:#173552!important;border-color:#4a78a2!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.aweb-theme-dark .aweb-domain-whois-body{background:#0b1c30!important;color:#c9d8e7!important;scrollbar-color:#355472 #0b1c30}
body.aweb-theme-dark .aweb-domain-whois-method{background:rgba(37,133,255,.14)!important;border:1px solid rgba(88,168,255,.26)!important;color:#76b7ff!important;-webkit-text-fill-color:#76b7ff!important}
body.aweb-theme-dark .aweb-domain-whois-row{border-bottom-color:#213a54!important}
body.aweb-theme-dark .aweb-domain-whois-row dt{color:#9fb5ca!important;-webkit-text-fill-color:#9fb5ca!important}
body.aweb-theme-dark .aweb-domain-whois-row dd{color:#d7e4f0!important;-webkit-text-fill-color:#d7e4f0!important}
body.aweb-theme-dark .aweb-domain-whois-loading,body.aweb-theme-dark .aweb-domain-whois-note{background:#10263e!important;border:1px solid #294863!important;color:#b9cde0!important;-webkit-text-fill-color:#b9cde0!important}
body.aweb-theme-dark .aweb-domain-whois-loading .aweb-domain-spinner{color:#62adf2!important;border-color:rgba(98,173,242,.28)!important;border-top-color:#62adf2!important;border-right-color:#62adf2!important}
body.aweb-theme-dark .aweb-domain-whois-error{background:rgba(244,63,94,.10)!important;border:1px solid rgba(251,113,133,.28)!important;color:#ffc4ce!important;-webkit-text-fill-color:#ffc4ce!important}
body.aweb-theme-dark .aweb-domain-whois-external,body.aweb-theme-dark .aweb-domain-whois-external:link,body.aweb-theme-dark .aweb-domain-whois-external:visited{background:#112941!important;border-color:#355a7c!important;color:#77b9ff!important;-webkit-text-fill-color:#77b9ff!important}
body.aweb-theme-dark .aweb-domain-whois-external:hover,body.aweb-theme-dark .aweb-domain-whois-external:focus{background:#173552!important;border-color:#4a84b7!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
