[x-cloak] { display: none !important; }

        /*
         * Cifras legibles: cero ovalado (sin barra o punto central).
         * Evita JetBrains Mono y desactiva «slashed zero» en fuentes que lo soporten.
         */
        body {
            font-feature-settings: "zero" 0;
        }

        .tabular-nums {
            font-variant-numeric: tabular-nums lining-nums;
            font-feature-settings: "tnum" 1, "lnum" 1, "zero" 0;
        }

        .font-mono {
            font-variant-numeric: tabular-nums lining-nums;
            font-feature-settings: "tnum" 1, "lnum" 1, "zero" 0;
        }

        input[type="number"],
        input[type="tel"],
        input[inputmode="numeric"],
        input[inputmode="decimal"],
        input[inputmode="tel"] {
            font-family: Inter, ui-sans-serif, system-ui, sans-serif;
            font-variant-numeric: tabular-nums lining-nums;
            font-feature-settings: "tnum" 1, "lnum" 1, "zero" 0;
        }

        input[type="number"].font-mono,
        input[inputmode="numeric"].font-mono,
        input[inputmode="decimal"].font-mono {
            font-family: Inter, ui-sans-serif, system-ui, sans-serif;
        }

        /* Custom Scrollbar */
        ::-webkit-scrollbar { width: 6px; height: 6px; }
        ::-webkit-scrollbar-track { background: transparent; }
        ::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 10px; }
        .dark ::-webkit-scrollbar-thumb { background: #334155; }

        .glass {
            background: rgba(255, 255, 255, 0.7);
            backdrop-filter: blur(12px);
            -webkit-backdrop-filter: blur(12px);
        }
        .dark .glass {
            background: rgba(15, 23, 42, 0.7);
        }

        .card-shadow {
            box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05);
        }
        .dark .card-shadow {
            box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.3);
        }

        @keyframes slide-in {
            from { transform: translateY(10px); opacity: 0; }
            to { transform: translateY(0); opacity: 1; }
        }
        .animate-slide-in { animation: slide-in 0.3s ease-out forwards; }

        /* Status Pulse */
        .pulse-emerald { animation: pulse-emerald 2s infinite; }
        @keyframes pulse-emerald {
            0% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.4); }
            70% { box-shadow: 0 0 0 10px rgba(16, 185, 129, 0); }
            100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
        }
        .custom-scrollbar::-webkit-scrollbar {
            width: 4px;
            height: 4px;
        }
        .custom-scrollbar::-webkit-scrollbar-track {
            background: transparent;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb {
            background: #e2e8f0;
            border-radius: 10px;
        }
        .dark .custom-scrollbar::-webkit-scrollbar-thumb {
            background: #334155;
        }
        .custom-scrollbar::-webkit-scrollbar-thumb:hover {
            background: #cbd5e1;
        }

        /* Ficha inmueble — miniatura: zoom al pasar el cursor */
        .ficha-hero-thumb {
            overflow: hidden;
            transition: box-shadow 0.3s ease;
        }
        .ficha-hero-thumb:hover {
            box-shadow: 0 4px 16px rgba(15, 23, 42, 0.14);
        }
        .dark .ficha-hero-thumb:hover {
            box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45);
        }
        .ficha-hero-thumb__img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
            transform-origin: center center;
        }
        .ficha-hero-thumb:hover .ficha-hero-thumb__img {
            transform: scale(1.2);
        }