/* NodeLogic License Manager compatibility for NodeLogic Banner Theme */

.nodelogic-lm-pricing {
    width: 100%;
    max-width: none;
    margin: 32px 0 48px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.nodelogic-lm-card {
    padding: 18px 16px;
    border-radius: 14px;
    border: 0;
    background: rgba(8, 16, 34, 0.5);
    box-shadow: none;
    color: #ffffff;
}

.nodelogic-lm-card h3,
.nodelogic-lm-step h3,
.nodelogic-lm-license-success h3,
.nodelogic-lm-portal h3,
.nodelogic-lm-portal h4 {
    color: var(--nlb-banner-title, #4ade80);
}

.nodelogic-lm-price,
.nodelogic-lm-tagline,
.nodelogic-lm-card li,
.nodelogic-lm-step p,
.nodelogic-lm-plan-overview__tagline,
.nodelogic-lm-plan-overview__features,
.nodelogic-lm-domain-settings__help,
.nodelogic-lm-portal__section-desc,
.nodelogic-lm-portal__details dt,
.nodelogic-lm-portal__details dd,
.nodelogic-lm-portal__license-meta,
.nodelogic-lm-license-success__meta {
    color: var(--nlb-menu-text, #cbd5f5);
}

.nodelogic-lm-price {
    font-size: 36px;
    line-height: 1;
    font-weight: 800;
}

.nodelogic-lm-price__trial,
.nlm-price-trial,
.nodelogic-lm-portal__msg.is-success {
    color: var(--nlb-accent-end, #4ade80);
}

.nodelogic-lm-price__then,
.nlm-price-then {
    color: var(--nlb-menu-text, #cbd5f5);
}

.nodelogic-lm-buy,
.nodelogic-lm-go-checkout,
.nodelogic-lm-download-btn,
.nodelogic-lm-portal__manage-btn,
.nlm-plan-select-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 20px;
    padding: 10px 22px;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.15;
    text-align: center;
    text-decoration: none;
    background: linear-gradient(135deg, var(--nlb-accent-start, #22c55e), var(--nlb-accent-end, #4ade80));
    color: var(--nlb-accent-text, #022c22);
    box-shadow: 0 0 12px rgba(34, 197, 94, 0.45);
    cursor: pointer;
}

.nodelogic-lm-buy:hover,
.nodelogic-lm-go-checkout:hover,
.nodelogic-lm-download-btn:hover,
.nodelogic-lm-portal__manage-btn:hover,
.nlm-plan-select-btn:hover {
    transform: scale(1.03);
}

.nodelogic-lm-buy.is-loading,
.nodelogic-lm-go-checkout.is-loading,
.nlm-plan-select-btn.is-disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

#nodelogic-lm-modal {
    background: rgba(7, 16, 34, 0.72);
}

.nodelogic-lm-modal__content {
    width: min(1100px, 100%);
    padding: 24px;
    border-radius: 18px;
    border: 1px solid var(--nlb-banner-border, #22c55e);
    background: linear-gradient(135deg, rgba(2, 6, 23, 0.97), rgba(6, 95, 70, 0.74));
    color: #ffffff;
    box-shadow: 0 24px 70px rgba(2, 6, 23, 0.62);
}

.nodelogic-lm-close {
    border: 1px solid rgba(255, 255, 255, 0.24);
    background: rgba(2, 6, 23, 0.78);
    color: #ffffff;
}

.nodelogic-lm-close:hover {
    border-color: var(--nlb-accent-start, #22c55e);
    color: var(--nlb-accent-end, #4ade80);
}

.nodelogic-lm-step,
.nodelogic-lm-plan-overview,
.nodelogic-lm-domain-settings,
.nodelogic-lm-summary {
    border-radius: 14px;
    border: 0;
    background: rgba(8, 16, 34, 0.5);
}

.nodelogic-lm-plan-overview__name,
.nodelogic-lm-plan-overview__price,
.nodelogic-lm-summary h4,
.nodelogic-lm-summary dt,
.nodelogic-lm-summary dd,
.nodelogic-lm-domain-settings__label {
    color: #ffffff;
}

.nodelogic-lm-checkout-grid {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 12px;
}

.nodelogic-lm-summary {
    width: min(100%, 420px);
    margin: 0;
    justify-self: center;
}

.nodelogic-lm-sites-option,
.nlm-sites-btn,
.nlm-agency-sites-input,
#nodelogic-lm-agency-sites {
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    background: rgba(15, 23, 42, 0.6);
    color: #ffffff;
}

.nodelogic-lm-sites-option.is-active,
.nlm-sites-btn.is-active {
    border-color: var(--nlb-accent-start, #22c55e);
    background: rgba(34, 197, 94, 0.2);
    color: var(--nlb-accent-end, #4ade80);
}

.nodelogic-lm-modal-note.is-error,
.nodelogic-lm-portal__msg.is-error,
.nodelogic-lm-portal__error {
    color: #fecaca;
}

.nodelogic-lm-license-success,
.nodelogic-lm-portal {
    width: 100%;
    max-width: none;
    margin: 32px 0 60px;
}

.nodelogic-lm-license-success,
.nodelogic-lm-portal__auth,
.nodelogic-lm-portal__licenses,
.nodelogic-lm-portal__dashboard {
    padding: 24px;
    border-radius: 16px;
    border: 0;
    background: linear-gradient(135deg, rgba(5, 12, 28, 0.7), rgba(6, 64, 60, 0.5));
    backdrop-filter: blur(6px);
    box-shadow: none;
    color: #ffffff;
}

.nodelogic-lm-license-success__key code,
.nodelogic-lm-portal__license-card,
.nodelogic-lm-portal__details > div,
.nodelogic-lm-portal__section,
.nodelogic-lm-portal__plan-card {
    border-radius: 12px;
    border: 0;
    background: rgba(9, 18, 38, 0.48);
    color: #ffffff;
}

.nodelogic-lm-portal__details > div {
    padding: 10px 12px;
    margin-bottom: 8px;
}

.nodelogic-lm-portal__details > div:last-child {
    margin-bottom: 0;
}

.nodelogic-lm-portal__license-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
}

.nodelogic-lm-portal__license-card:hover {
    background: rgba(11, 24, 47, 0.58);
}

.nodelogic-lm-portal__license-status.is-active,
.nodelogic-lm-portal__license-status.is-generated {
    background: rgba(34, 197, 94, 0.2);
    color: var(--nlb-accent-end, #4ade80);
}

.nodelogic-lm-portal__license-status.is-inactive,
.nodelogic-lm-portal__license-status.is-deactivated {
    background: rgba(239, 68, 68, 0.16);
    color: #fecaca;
}

.nodelogic-lm-portal__logout,
.nodelogic-lm-portal__btn-danger {
    border-radius: 10px;
}

.nodelogic-lm-portal__logout {
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(15, 23, 42, 0.46);
    color: #ffffff;
}

.nodelogic-lm-portal__logout:hover {
    border-color: var(--nlb-accent-start, #22c55e);
    background: rgba(15, 23, 42, 0.64);
    color: #ffffff;
}

.nodelogic-lm-portal__header-actions {
    gap: 10px;
}

.nodelogic-lm-portal__field input,
#nlm-auth-email,
#nlm-auth-otp,
#nlm-auth-reg-email {
    border: 1px solid rgba(255, 255, 255, 0.2);
    background: rgba(15, 23, 42, 0.65);
    color: #ffffff;
}

.nodelogic-lm-portal__field label,
.nlm-auth-hint,
.nlm-auth-switch {
    color: var(--nlb-menu-text, #cbd5f5);
}

.nodelogic-lm-domain-settings__label,
.nodelogic-lm-portal__field label {
    display: block;
    padding-inline: 2px;
}

.nodelogic-lm-portal__section {
    margin-top: 14px;
    padding: 16px;
    border-top: 0;
}

.nodelogic-lm-portal__plan-options {
    display: grid;
    gap: 10px;
}

.nodelogic-lm-portal__plan-card {
    padding: 14px 16px;
}

.nodelogic-lm-download-btn {
    margin: 0;
    max-width: 100%;
}

#nodelogic-lm-portal-download-link {
    display: inline-flex;
}

.nodelogic-lm-portal__section--danger p {
    margin: 0 0 14px;
    color: var(--nlb-menu-text, #cbd5f5);
}

.nodelogic-lm-portal__btn-danger {
    border: 1px solid rgba(248, 113, 113, 0.46);
    background: rgba(127, 29, 29, 0.35);
    color: #fecaca;
    padding: 10px 18px;
}

.nodelogic-lm-portal__btn-danger:hover {
    background: rgba(153, 27, 27, 0.55);
    color: #fee2e2;
}

.nlm-auth-switch a,
.nodelogic-lm-portal a {
    color: var(--nlb-accent-end, #4ade80);
}

.nlm-auth-switch a:hover,
.nodelogic-lm-portal a:hover {
    color: var(--nlb-accent-start, #22c55e);
}

body.nlb-mode-light .nodelogic-lm-card,
body.nlb-mode-light .nodelogic-lm-step,
body.nlb-mode-light .nodelogic-lm-plan-overview,
body.nlb-mode-light .nodelogic-lm-domain-settings,
body.nlb-mode-light .nodelogic-lm-summary,
body.nlb-mode-light .nodelogic-lm-license-success,
body.nlb-mode-light .nodelogic-lm-portal__auth,
body.nlb-mode-light .nodelogic-lm-portal__licenses,
body.nlb-mode-light .nodelogic-lm-portal__dashboard,
body.nlb-mode-light .nodelogic-lm-license-success__key code,
body.nlb-mode-light .nodelogic-lm-portal__license-card,
body.nlb-mode-light .nodelogic-lm-portal__details > div,
body.nlb-mode-light .nodelogic-lm-portal__section,
body.nlb-mode-light .nodelogic-lm-portal__plan-card {
    background: rgba(255, 255, 255, 0.9);
    color: #0f172a;
}

body.nlb-mode-light .nodelogic-lm-card h3,
body.nlb-mode-light .nodelogic-lm-step h3,
body.nlb-mode-light .nodelogic-lm-license-success h3,
body.nlb-mode-light .nodelogic-lm-portal h3,
body.nlb-mode-light .nodelogic-lm-portal h4 {
    color: #166534;
}

body.nlb-mode-light .nodelogic-lm-price,
body.nlb-mode-light .nodelogic-lm-tagline,
body.nlb-mode-light .nodelogic-lm-card li,
body.nlb-mode-light .nodelogic-lm-step p,
body.nlb-mode-light .nodelogic-lm-plan-overview__tagline,
body.nlb-mode-light .nodelogic-lm-plan-overview__features,
body.nlb-mode-light .nodelogic-lm-domain-settings__help,
body.nlb-mode-light .nodelogic-lm-portal__section-desc,
body.nlb-mode-light .nodelogic-lm-portal__details dt,
body.nlb-mode-light .nodelogic-lm-portal__details dd,
body.nlb-mode-light .nodelogic-lm-portal__license-meta,
body.nlb-mode-light .nodelogic-lm-license-success__meta,
body.nlb-mode-light .nodelogic-lm-portal__section--danger p,
body.nlb-mode-light .nodelogic-lm-portal__field label,
body.nlb-mode-light .nlm-auth-hint,
body.nlb-mode-light .nlm-auth-switch {
    color: #334155;
}

body.nlb-mode-light .nodelogic-lm-plan-overview__name,
body.nlb-mode-light .nodelogic-lm-plan-overview__price,
body.nlb-mode-light .nodelogic-lm-summary h4,
body.nlb-mode-light .nodelogic-lm-summary dt,
body.nlb-mode-light .nodelogic-lm-summary dd,
body.nlb-mode-light .nodelogic-lm-domain-settings__label {
    color: #0f172a;
}

body.nlb-mode-light .nodelogic-lm-sites-option,
body.nlb-mode-light .nlm-sites-btn,
body.nlb-mode-light .nlm-agency-sites-input,
body.nlb-mode-light #nodelogic-lm-agency-sites,
body.nlb-mode-light .nodelogic-lm-portal__field input,
body.nlb-mode-light #nlm-auth-email,
body.nlb-mode-light #nlm-auth-otp,
body.nlb-mode-light #nlm-auth-reg-email {
    background: rgba(255, 255, 255, 0.96);
    color: #0f172a;
    border-color: rgba(15, 23, 42, 0.2);
}

body.nlb-mode-light .nodelogic-lm-portal__logout {
    border-color: rgba(15, 23, 42, 0.24);
    background: rgba(248, 252, 255, 0.9);
    color: #0f172a;
}

body.nlb-mode-light .nodelogic-lm-portal__logout:hover {
    background: rgba(241, 245, 249, 0.95);
    color: #0f172a;
}

body.nlb-mode-light .nodelogic-lm-modal__content {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.97), rgba(236, 246, 255, 0.9));
    color: #0f172a;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.18);
}

body.nlb-mode-light .nodelogic-lm-close {
    border-color: rgba(15, 23, 42, 0.26);
    background: rgba(255, 255, 255, 0.95);
    color: #0f172a;
}

body.nlb-mode-light .nlm-auth-switch a,
body.nlb-mode-light .nodelogic-lm-portal a {
    color: #166534;
}

body.nlb-mode-light .nlm-auth-switch a:hover,
body.nlb-mode-light .nodelogic-lm-portal a:hover {
    color: #14532d;
}

@media (max-width: 1024px) {
    .nodelogic-lm-pricing {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .nodelogic-lm-portal__license-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .nodelogic-lm-pricing {
        grid-template-columns: 1fr;
        margin-top: 18px;
    }

    .nodelogic-lm-modal__content,
    .nodelogic-lm-license-success,
    .nodelogic-lm-portal__auth,
    .nodelogic-lm-portal__licenses,
    .nodelogic-lm-portal__dashboard {
        padding: 16px;
    }

    .nodelogic-lm-checkout-grid {
        grid-template-columns: 1fr;
    }
}
