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

/* Arabic (RTL) font — Noto Kufi Arabic is modern, clean and purpose-built for digital UI */
html[dir="rtl"],
html[dir="rtl"] * {
    font-family: 'Noto Kufi Arabic', 'Inter', sans-serif !important;
}

@tailwind base;
@tailwind components;
@tailwind utilities;

/* ===== Lovable Glassmorphism Design System ===== */
@layer components {
    .glass-card {
        @apply bg-glass-600 backdrop-blur-xl rounded-2xl border border-glass-300 shadow-lg;
    }
    .glass-card-subtle {
        @apply bg-glass-400 backdrop-blur-lg rounded-xl border border-glass-200 shadow-md;
    }
    .glass-header {
        @apply bg-glass-500 backdrop-blur-xl border-b border-glass-200 shadow-sm;
    }
    .lovable-gradient-text {
        @apply bg-gradient-to-r from-lovable-primary to-lovable-accent bg-clip-text text-transparent;
    }
    .lovable-btn-primary {
        @apply bg-lovable-primary hover:bg-lovable-primary-dark text-white font-semibold 
               px-5 py-2.5 rounded-xl shadow-lg shadow-lovable-primary/20 
               transition-all duration-200 hover:shadow-xl hover:shadow-lovable-primary/30;
    }
    .lovable-badge {
        @apply inline-flex items-center px-2.5 py-0.5 rounded-full text-xs font-medium;
    }
    .lovable-badge-success {
        @apply lovable-badge bg-emerald-100 text-emerald-700;
    }
    .lovable-badge-warning {
        @apply lovable-badge bg-amber-100 text-amber-700;
    }
    .lovable-badge-danger {
        @apply lovable-badge bg-red-100 text-red-700;
    }
    .lovable-stat-card {
        @apply glass-card p-5 flex flex-col gap-2 hover:shadow-xl transition-all duration-300;
    }
}

.MuiInputBase-input,
.MuiInputBase-root {
    @apply p-[0.4rem] !important;
}

.rmdp-container {
    @apply w-full !important;
}

.rmdp-input {
    @apply w-full px-4 py-[1.4rem] rounded-lg bg-transparent hover:border hover:border-black !important;
}

.rmdp-calendar {
    @apply z-[500];
}

.rmdp-input::placeholder {
    @apply text-transparent !important;
}

.rmdp-container:has(.rmdp-input:focus)~.rmdp-input-label {
    @apply -top-4 scale-75 cursor-default;
}


.rmdp-container:has(.rmdp-input:not(:placeholder-shown))~.rmdp-input-label {
    @apply -top-4 scale-75 cursor-default;
}

.dead-dashboard-date {
    @apply border-sky-300 text-sky-500 transition-all duration-150 hover:border-sky-600 !important;
}

.dead-dashboard-date:focus {
    @apply border-sky-500 !important;
}

.date-error {
    @apply border border-red-400 !important;
}

.rmdp-input-no-border {
    @apply border-transparent hover:border-transparent focus:border-transparent rounded-none !important;
}

.action-screen {
    border: 1px solid rgb(148, 148, 148);
}

.only-print {
   display: none;
}

@media print {
    .no-print {
        display: none !important;
    }

    .only-print {
        display: block;
    }

    .rtl {
        direction: rtl !important;
        margin: 1rem !important;
        display: block !important;

    }

    .ltr {
        direction: ltr !important;
        margin: 1rem !important;
        display: block !important;
    }

    .avoid-all {
        margin-top: 100vh !important;
    }
}

@keyframes fadeInRight {
    0% {
        opacity: 0;
        transform: translateX(-10rem);
    }

    80% {
        transform: translateX(1rem);
    }

    100% {
        opacity: 1;
        transform: translate(0);
    }
}

@keyframes fadeInLeft {
    0% {
        opacity: 0;
        transform: translateX(10rem);
    }

    80% {
        transform: translateX(-1rem);
    }

    100% {
        opacity: 1;
        transform: translate(0);
    }
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(5rem);
    }

    100% {
        opacity: 1;
        transform: translate(0);
    }
}

@keyframes scrollText {
    from {
        -moz-transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }

    to {
        -moz-transform: translateX(100%);
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
}