/* NewsLeb — Base CSS */

* {
    box-sizing: border-box;
}

body {
    font-family: 'Cairo', 'Inter', sans-serif;
}

/* Arabic typography */
[lang="ar"] body,
[dir="rtl"] body {
    font-family: 'Cairo', sans-serif;
}

/* Latin headline font */
[lang="en"] h1,
[lang="en"] h2,
[lang="en"] h3 {
    font-family: 'Playfair Display', serif;
}

/* Arabic headline font */
[lang="ar"] h1,
[lang="ar"] h2,
[lang="ar"] h3,
[dir="rtl"] h1,
[dir="rtl"] h2,
[dir="rtl"] h3 {
    font-family: 'Cairo', sans-serif;
}

/* Dark mode support */
.dark body {
    background-color: #111827;
    color: #f3f4f6;
}

/* Line clamp utility */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Smooth transitions */
body, header, footer, main {
    transition: background-color 0.3s, color 0.3s;
}

/* Bottom padding for ticker */
main {
    padding-bottom: 56px;
}

/* Article body styles */
.article-body p { margin-bottom: 1rem; line-height: 1.8; }
.article-body h2 { font-size: 1.4rem; font-weight: 700; margin: 1.5rem 0 0.75rem; }
.article-body h3 { font-size: 1.2rem; font-weight: 700; margin: 1.25rem 0 0.5rem; }
.article-body blockquote {
    border-right: 4px solid #e63946;
    padding-right: 1rem;
    margin: 1rem 0;
    color: #6b7280;
    font-style: italic;
}
.article-body ul, .article-body ol {
    padding-right: 1.5rem;
    margin-bottom: 1rem;
}
.article-body li { margin-bottom: 0.25rem; }
.article-body a { color: #e63946; text-decoration: underline; }
