/* Explain: Base styles for reset, typography, and theming. - */
* {
    box-sizing: border-box;
}

html {
    background: var(--background-color);
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    overflow-x: hidden;
    color: var(--text-color);
    font-family: var(--font-body);
    width: 100%;
    max-width: 100vw;
}

h1, h2, h3, h4 {
    font-family: var(--font-heading);
}

button, a.btn, input, select {
    touch-action: manipulation;
}

::selection {
    background: var(--accent-color);
    color: var(--primary-color);
}

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

/* RTL overrides for DaisyUI if needed */
.menu-horizontal > li:not(.menu-title) > details > ul {
    right: 0;
    left: auto;
}

/* تحسينات التجاوب والمسافات للشاشات الصغيرة */
@media (max-width: 640px) {
    h1, h2, h3, h4, h5, h6 {
        line-height: 1.35 !important;
    }
    p {
        line-height: 1.75 !important;
    }
    section {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
    .container, .max-w-7xl, .max-w-5xl, .max-w-4xl {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
}