/* ===== ملف التجاوب الشامل لمنصة نهران ===== */
/* يضمن وضوح الخطوط على جميع احجام الشاشات */

/* === الاساسيات === */
:root {
    --font-xs: 12px;
    --font-sm: 14px;
    --font-base: 16px;
    --font-lg: 18px;
    --font-xl: 20px;
    --font-2xl: 24px;
    --font-3xl: 28px;
    --font-4xl: 32px;
}

html {
    font-size: 16px;
    -webkit-text-size-adjust: 100%;
}

body {
    font-size: var(--font-base);
    line-height: 1.6;
}

/* === العناوين === */
h1 { font-size: var(--font-3xl); }
h2 { font-size: var(--font-2xl); }
h3 { font-size: var(--font-xl); }
h4 { font-size: var(--font-lg); }
h5, h6 { font-size: var(--font-base); }

/* === النصوص === */
p, li, td, th, span, label, a {
    font-size: inherit;
}

small, .small {
    font-size: var(--font-sm);
}

/* === الحقول والازرار === */
input, select, textarea, button {
    font-size: var(--font-base);
    padding: 10px 12px;
}

button, .btn {
    font-size: var(--font-lg);
    padding: 12px 20px;
    min-height: 44px; /* للمس السهل */
}

/* === الجداول === */
table {
    font-size: var(--font-sm);
}

th, td {
    padding: 10px 8px;
}

/* === البطاقات والصناديق === */
.card, .box, .panel {
    padding: 15px;
}

/* ============================================ */
/* === شاشات متوسطة (tablets) 768px - 1024px === */
/* ============================================ */
@media screen and (max-width: 1024px) {
    :root {
        --font-xs: 12px;
        --font-sm: 14px;
        --font-base: 15px;
        --font-lg: 17px;
        --font-xl: 19px;
        --font-2xl: 22px;
        --font-3xl: 26px;
    }
    
    body { padding: 12px; }
    
    .container { padding: 15px; }
    
    input, select, textarea { padding: 10px; }
}

/* ============================================ */
/* === شاشات صغيرة (phones) اقل من 768px === */
/* ============================================ */
@media screen and (max-width: 768px) {
    :root {
        --font-xs: 13px;
        --font-sm: 14px;
        --font-base: 16px;
        --font-lg: 18px;
        --font-xl: 20px;
        --font-2xl: 22px;
        --font-3xl: 24px;
    }
    
    html { font-size: 16px; }
    body { padding: 10px; }
    
    /* الهيدر */
    .header, header {
        padding: 12px 15px;
    }
    .header h1, header h1 {
        font-size: var(--font-2xl);
    }
    .header p, header p {
        font-size: var(--font-sm);
    }
    .logo {
        font-size: var(--font-lg) !important;
    }
    .nav a, nav a {
        font-size: var(--font-sm);
        padding: 8px 10px;
    }
    
    /* المحتوى */
    .container { padding: 10px; }
    .body, .content, main { padding: 15px; }
    
    /* العناوين */
    h1, .h1 { font-size: var(--font-2xl); }
    h2, .h2 { font-size: var(--font-xl); }
    h3, .h3 { font-size: var(--font-lg); }
    h4, .h4 { font-size: var(--font-base); }
    
    /* عناوين الاقسام */
    .section-title, .title {
        font-size: var(--font-lg) !important;
    }
    
    /* الحقول */
    input, select, textarea {
        font-size: var(--font-base) !important;
        padding: 12px !important;
        min-height: 44px;
    }
    
    label {
        font-size: var(--font-sm) !important;
        margin-bottom: 6px;
        display: block;
    }
    
    /* الازرار */
    button, .btn, input[type="submit"], input[type="button"] {
        font-size: var(--font-lg) !important;
        padding: 14px 20px !important;
        min-height: 48px;
        width: 100%;
    }
    
    /* الجداول */
    table { font-size: var(--font-sm); }
    th, td { padding: 10px 6px; }
    
    /* البطاقات */
    .card, .box, .panel, .event-card, .chart-box, .person-box {
        padding: 12px;
        margin-bottom: 12px;
    }
    
    /* القوائم */
    li { padding: 8px 0; font-size: var(--font-base); }
    
    /* الرموز الفلكية */
    .planet-symbol, .sign-symbol, .event-icon {
        font-size: 24px !important;
    }
    
    /* الشارات والعلامات */
    .badge, .tag, .label {
        font-size: var(--font-xs) !important;
        padding: 4px 10px;
    }
    
    /* التخطيط */
    .row, .grid, .flex {
        flex-direction: column;
    }
    .col, .column {
        width: 100% !important;
        margin-bottom: 10px;
    }
    
    /* اخفاء بعض العناصر على الموبايل */
    .hide-mobile, .desktop-only {
        display: none !important;
    }
}

/* ============================================ */
/* === شاشات صغيرة جدا اقل من 480px === */
/* ============================================ */
@media screen and (max-width: 480px) {
    :root {
        --font-xs: 13px;
        --font-sm: 14px;
        --font-base: 16px;
        --font-lg: 18px;
        --font-xl: 20px;
        --font-2xl: 22px;
        --font-3xl: 24px;
    }
    
    body { padding: 8px; }
    
    .header, header { padding: 10px 12px; }
    .header h1, header h1 { font-size: var(--font-xl); }
    
    .container, .body, .content, main { padding: 10px; }
    
    /* صفوف النماذج */
    .row2, .row3, .row4, .form-row-inline {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
    
    /* الجداول - تحويل لبطاقات */
    table.responsive {
        display: block;
    }
    table.responsive thead {
        display: none;
    }
    table.responsive tr {
        display: block;
        margin-bottom: 10px;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        padding: 10px;
    }
    table.responsive td {
        display: flex;
        justify-content: space-between;
        padding: 8px 0;
        border-bottom: 1px solid #f0f0f0;
    }
    table.responsive td::before {
        content: attr(data-label);
        font-weight: bold;
        color: #666;
    }
    
    /* الازرار المزدوجة */
    .btn-group {
        flex-direction: column;
        gap: 8px;
    }
    .btn-group .btn {
        width: 100%;
    }
}

/* ============================================ */
/* === شاشات كبيرة اكثر من 1200px === */
/* ============================================ */
@media screen and (min-width: 1200px) {
    :root {
        --font-xs: 12px;
        --font-sm: 14px;
        --font-base: 16px;
        --font-lg: 18px;
        --font-xl: 22px;
        --font-2xl: 26px;
        --font-3xl: 32px;
        --font-4xl: 40px;
    }
    
    .container {
        max-width: 1400px;
        margin: 0 auto;
    }
}

/* ============================================ */
/* === شاشات كبيرة جدا اكثر من 1600px === */
/* ============================================ */
@media screen and (min-width: 1600px) {
    :root {
        --font-base: 17px;
        --font-lg: 19px;
        --font-xl: 24px;
        --font-2xl: 28px;
        --font-3xl: 36px;
    }
    
    .container {
        max-width: 1600px;
    }
}

/* ============================================ */
/* === تحسينات الوصول === */
/* ============================================ */

/* تكبير الخط للمستخدمين الذين يفضلون ذلك */
@media screen and (prefers-reduced-motion: no-preference) {
    html {
        scroll-behavior: smooth;
    }
}

/* وضع التباين العالي */
@media screen and (prefers-contrast: high) {
    body {
        font-weight: 500;
    }
    a, button, .btn {
        text-decoration: underline;
    }
}

/* الوضع الداكن */
@media screen and (prefers-color-scheme: dark) {
    /* يمكن اضافة دعم الوضع الداكن هنا */
}

/* ============================================ */
/* === عناصر خاصة بمنصة نهران === */
/* ============================================ */

/* صفحة الاحداث الفلكية */
@media screen and (max-width: 768px) {
    .day-header h2 {
        font-size: var(--font-base) !important;
    }
    .event-info h4 {
        font-size: var(--font-sm) !important;
    }
    .event-info .time {
        font-size: var(--font-xs) !important;
    }
    .meaning {
        font-size: var(--font-sm) !important;
        line-height: 1.8;
    }
    .field-item h5 {
        font-size: var(--font-xs) !important;
    }
    .field-item p {
        font-size: var(--font-xs) !important;
    }
    .advice-box p, .mundane-box p {
        font-size: var(--font-sm) !important;
    }
}

/* صفحة التوافق */
@media screen and (max-width: 768px) {
    .score-circle {
        width: 140px !important;
        height: 140px !important;
        font-size: 44px !important;
    }
    .planets-tbl {
        font-size: var(--font-sm) !important;
    }
    .asp-item {
        font-size: var(--font-sm) !important;
    }
    .analysis-section p {
        font-size: var(--font-sm) !important;
    }
}

/* صفحة الدردشة */
@media screen and (max-width: 768px) {
    .message-text {
        font-size: var(--font-base) !important;
    }
    .message-time {
        font-size: var(--font-xs) !important;
    }
    .chat-input {
        font-size: var(--font-base) !important;
    }
}

/* صفحة الدورات */
@media screen and (max-width: 768px) {
    .course-title {
        font-size: var(--font-lg) !important;
    }
    .course-desc {
        font-size: var(--font-sm) !important;
    }
    .lesson-title {
        font-size: var(--font-base) !important;
    }
}

/* صفحة التقويم */
@media screen and (max-width: 768px) {
    .calendar-day {
        font-size: var(--font-sm) !important;
        min-height: 60px;
    }
    .calendar-event {
        font-size: var(--font-xs) !important;
    }
}

/* صفحة الادوات */
@media screen and (max-width: 768px) {
    .tool-card h3 {
        font-size: var(--font-lg) !important;
    }
    .tool-card p {
        font-size: var(--font-sm) !important;
    }
}

/* المنتدى */
@media screen and (max-width: 768px) {
    .topic-title {
        font-size: var(--font-base) !important;
    }
    .post-content {
        font-size: var(--font-base) !important;
        line-height: 1.8;
    }
    .post-meta {
        font-size: var(--font-xs) !important;
    }
}

/* ============================================ */
/* === طباعة === */
/* ============================================ */
@media print {
    body {
        font-size: 12pt;
        line-height: 1.5;
    }
    h1 { font-size: 18pt; }
    h2 { font-size: 16pt; }
    h3 { font-size: 14pt; }
    
    .header, .nav, .footer, button, .btn, .no-print {
        display: none !important;
    }
}
