:root {
    --dental-bg: #f8fafc;
    --dental-card: #ffffff;
    --dental-subtle: #f0f9ff;
    --dental-border: #e2e8f0;
    --dental-text: #0f172a;
    --dental-cyan: #0284c7;
}

body {
    background-color: var(--dental-bg);
    color: var(--dental-text);
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
    -webkit-tap-highlight-color: transparent;
}

.clinic-pattern {
    background-color: #f8fafc;
    background-image:
        radial-gradient(at 0% 0%, rgba(14, 165, 233, 0.06) 0px, transparent 50%),
        radial-gradient(at 100% 0%, rgba(20, 184, 166, 0.06) 0px, transparent 50%),
        radial-gradient(at 50% 100%, rgba(2, 132, 199, 0.04) 0px, transparent 50%);
    background-attachment: fixed;
}

.clinic-grid {
    background-size: 32px 32px;
    background-image:
        linear-gradient(to right, rgba(2, 132, 199, 0.035) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(2, 132, 199, 0.035) 1px, transparent 1px);
}

::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

::-webkit-scrollbar-track {
    background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 9999px;
}

::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

.scrollbar-none::-webkit-scrollbar {
    display: none;
}

.scrollbar-none {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.tool-row {
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

@media (min-width: 640px) {
    .tool-row:hover {
        transform: translateX(3px);
        background-color: #f0f9ff !important;
    }
}

.search-highlight {
    background-color: #fef08a;
    color: #854d0e;
    padding: 0 2px;
    border-radius: 3px;
    font-weight: 700;
}

.safe-bottom-padding {
    padding-bottom: max(0.875rem, env(safe-area-inset-bottom));
}

@media print {

    .no-print,
    header,
    footer,
    #mobileBottomBar,
    #floatingWhatsAppBtn,
    #toastContainer,
    #logoutModal,
    #customToolModal,
    #paymentModal,
    #presetModal,
    #budgetModal,
    #importModal {
        display: none !important;
    }

    body {
        background: #ffffff !important;
        color: #000000 !important;
        padding: 0 !important;
        font-size: 11pt !important;
    }

    .print-only {
        display: block !important;
    }

    .print-table {
        width: 100% !important;
        border-collapse: collapse !important;
    }

    .print-table th,
    .print-table td {
        border: 1px solid #cbd5e1 !important;
        padding: 6px 10px !important;
    }

    .print-table th {
        background-color: #f8fafc !important;
    }
}

.print-only {
    display: none;
}