/*
Theme Name: Hoang Huy New City Landing
Theme URI: https://hoanghuynewcityhp.vn
Author: Bui Xuan Thinh
Author URI: https://hoanghuynewcityhp.vn
Description: Theme landing page dự án Chung cư Hoàng Huy New City - chuyển đổi từ HTML tĩnh sang WordPress.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: hoanghuy-newcity
*/

.card-simple { background: #FFFFFF; border: 1px solid #E5E7EB; border-radius: 1.25rem; transition: box-shadow 0.25s ease, transform 0.25s ease; }
.card-simple:hover { box-shadow: 0 8px 24px 0 rgba(15, 23, 42, 0.08); }
.form-input-simple { background: #FFFFFF; border: 1px solid #E2E8F0; color: #0F172A; transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.form-input-simple:focus { outline: none; border-color: #EA580C; box-shadow: 0 0 0 1px #EA580C; }
.title-unified { font-family: "Plus Jakarta Sans", sans-serif; font-weight: 800; color: #EA580C; line-height: 1.25; letter-spacing: -0.025em; }
.eyebrow-label { font-size: 0.75rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.body-copy { font-size: 0.9375rem; line-height: 1.7; color: #0F172A; }
.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
.liquid-glass {
    background: linear-gradient(180deg, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0.32) 100%);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border-bottom: 1px solid rgba(255,255,255,0.4);
    box-shadow: 0 8px 32px 0 rgba(15, 23, 42, 0.08), inset 0 1px 0 0 rgba(255,255,255,0.6);
}
.liquid-glass-pill {
    background: rgba(255,255,255,0.5);
    backdrop-filter: blur(12px) saturate(160%);
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    border: 1px solid rgba(255,255,255,0.5);
}
@keyframes gentle-pulse {
    0% { opacity: 0.35; transform: scale(1); }
    50% { opacity: 0.15; transform: scale(1.06); }
    100% { opacity: 0.35; transform: scale(1); }
}
.animate-gentle-pulse {
    animation: gentle-pulse 2.8s ease-in-out infinite;
}
.status-dot {
    width: 0.75rem;
    height: 0.75rem;
    min-width: 0.75rem;
    min-height: 0.75rem;
    aspect-ratio: 1 / 1;
    border-radius: 9999px;
    background-color: #EA580C;
    flex: none;
    display: block;
    box-sizing: border-box;
    padding: 0;
    border: 0;
}
.consent-checkbox {
    appearance: none;
    -webkit-appearance: none;
    width: 1.15rem;
    height: 1.15rem;
    border: 1.5px solid #CBD5E1;
    border-radius: 0.35rem;
    background-color: #FFFFFF;
    cursor: pointer;
    position: relative;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}
.consent-checkbox:checked {
    background-color: #EA580C;
    border-color: #EA580C;
}
.consent-checkbox:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 5px;
    height: 9px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
.consent-checkbox:focus-visible {
    outline: 2px solid #EA580C;
    outline-offset: 2px;
}
@keyframes popup-fade-in { 0% { opacity: 0; } 100% { opacity: 1; } }
@keyframes popup-scale-in {
    0% { opacity: 0; transform: scale(0.92) translateY(12px); }
    100% { opacity: 1; transform: scale(1) translateY(0); }
}
#popup-lead-overlay.is-open { animation: popup-fade-in 0.25s ease forwards; }
#popup-lead-overlay.is-open #popup-lead-card { animation: popup-scale-in 0.32s cubic-bezier(0.22, 1, 0.36, 1) forwards; }

/* ===== TOAST NOTIFICATION ===== */
#toast-container {
    position: fixed;
    top: 1rem;
    left: 50%;
    transform: translateX(-50%);
    z-index: 300;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    width: calc(100% - 2rem);
    max-width: 420px;
    pointer-events: none;
}
@media (min-width: 640px) {
    #toast-container { top: 1.5rem; left: auto; right: 1.5rem; transform: none; }
}
.toast-item {
    pointer-events: auto;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    background: #FFFFFF;
    border: 1px solid #E5E7EB;
    border-left: 4px solid #16A34A;
    border-radius: 0.9rem;
    box-shadow: 0 12px 32px rgba(15,23,42,0.14);
    padding: 0.9rem 1rem;
    opacity: 0;
    transform: translateY(-14px) scale(0.98);
    transition: opacity 0.25s ease, transform 0.25s ease;
}
.toast-item.toast-error { border-left-color: #DC2626; }
.toast-item.is-visible { opacity: 1; transform: translateY(0) scale(1); }
.toast-icon { flex: none; width: 1.5rem; height: 1.5rem; border-radius: 9999px; display: flex; align-items: center; justify-content: center; background: #DCFCE7; color: #16A34A; }
.toast-item.toast-error .toast-icon { background: #FEE2E2; color: #DC2626; }
.toast-text { flex: 1; }
.toast-title { font-size: 0.85rem; font-weight: 800; color: #0F172A; line-height: 1.3; }
.toast-desc { font-size: 0.78rem; color: #475569; font-weight: 500; line-height: 1.4; margin-top: 0.15rem; }
.toast-close { flex: none; color: #94A3B8; cursor: pointer; padding: 0.15rem; border-radius: 9999px; }
.toast-close:hover { color: #0F172A; background: #F1F5F9; }
