body {
    font-family: 'Cairo', Tahoma, Arial, sans-serif;
    background: #fff;
    margin: 0;
    direction: rtl;
    color: #14236a;
}
header, .main-navbar {
    background: #14236a;
    color: #fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 2rem;
    box-shadow: 0 2px 12px #14236a22;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}
.logo {
    font-size: 1.7rem;
    font-weight: bold;
    letter-spacing: 1px;
    color: #fff;
}
.user-info {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    font-size: 1.1rem;
}
.container {
    display: flex;
    min-height: 90vh;
}
.sidebar {
    background: #eaf6fa;
    min-width: 210px;
    padding: 2rem 1rem 1rem 1rem;
    box-shadow: 2px 0 16px #14236a10;
    border-radius: 0;
    margin: 1.5rem 0.5rem 1.5rem 0;
    height: fit-content;
}
.sidebar ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.sidebar li {
    margin-bottom: 1.3rem;
}
.sidebar a {
    color: #14236a;
    text-decoration: none;
    font-weight: 500;
    font-size: 1.13rem;
    padding: 0.6rem 1.1rem;
    border-radius: 0;
    display: block;
    transition: background 0.2s, color 0.2s;
}
.sidebar a.active, .sidebar a:hover {
    background: #fbe6ea;
    color: #14236a;
    box-shadow: 0 2px 8px #fbe6ea60;
}
main {
    flex: 1;
    padding: 2.5rem 2.5rem 2.5rem 2.5rem;
}
h1 {
    color: #14236a;
    margin-top: 0;
    font-size: 2.1rem;
}
.progress-bar {
    background: #eaf6fa;
    border-radius: 0;
    height: 32px;
    width: 100%;
    margin: 1.2rem 0;
    overflow: hidden;
    box-shadow: 0 1px 6px #14236a20;
}
.progress-value {
    background: linear-gradient(90deg, #ffe066 0%, #14236a 100%);
    color: #14236a;
    height: 100%;
    text-align: center;
    line-height: 32px;
    border-radius: 0;
    font-weight: bold;
    font-size: 1.1rem;
    transition: width 0.5s;
    box-shadow: 0 2px 8px #ffe06620;
}
section {
    margin-bottom: 2.2rem;
    background: #fbe6ea;
    border-radius: 0;
    box-shadow: 0 2px 12px #eaf6fa60;
    padding: 1.5rem 2rem;
}
ul, ol {
    padding-right: 1.5rem;
}
.status.done {
    color: #388e3c;
    font-weight: bold;
}
.status.pending {
    color: #ffe066;
    font-weight: bold;
}
form.filter, form.ask-question {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 1.5rem;
}
form.filter label, form.ask-question label {
    font-weight: 500;
}
form.filter select, form.ask-question textarea {
    border: 1px solid #eaf6fa;
    border-radius: 0;
    padding: 0.4rem 0.9rem;
    font-size: 1rem;
    margin-right: 0.5rem;
    background: #fff;
}
form.filter button, form.ask-question button {
    background: #ffe066;
    color: #14236a;
    border: none;
    border-radius: 0;
    padding: 0.6rem 1.4rem;
    font-size: 1rem;
    cursor: pointer;
    font-weight: bold;
    box-shadow: 0 2px 8px #ffe06640;
    transition: background 0.2s;
}
form.filter button:hover, form.ask-question button:hover {
    background: #14236a;
    color: #fff;
}
.points-badges span, .my-points span {
    color: #ffe066;
    font-weight: bold;
    font-size: 1.2rem;
}
.my-badges li, .points-badges h3 {
    display: inline-block;
    margin-left: 0.7rem;
    font-size: 1.2rem;
}
.leaderboard li {
    margin-bottom: 0.5rem;
    font-size: 1.1rem;
}
/* بطاقات آخر الدروس المضافة - تصميم عمودي متناسق مع صورة كبيرة */
.lessons-cards {
    display: flex;
    flex-direction: row;
    gap: 2.5rem;
    margin-top: 1.2rem;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.lesson-card {
    background: #eaf6fa;
    border-radius: 0;
    box-shadow: 0 2px 10px #eaf6fa40;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.1rem;
    padding: 1.5rem 1.2rem 1.2rem 1.2rem;
    min-width: 180px;
    max-width: 200px;
    flex: 1 1 180px;
    transition: box-shadow 0.2s, transform 0.2s;
}
.lesson-card:hover {
    box-shadow: 0 6px 24px #14236a30;
    transform: translateY(-3px) scale(1.03);
}
.lesson-thumb {
    width: 150px;
    height: 150px;
    border-radius: 0;
    overflow: hidden;
    background: #d6f5d6;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.7rem auto;
}
.lesson-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.lesson-title {
    font-size: 1.1rem;
    font-weight: bold;
    color: #14236a;
    text-align: center;
    margin-bottom: 0.5rem;
}
.lesson-actions {
    display: flex;
    gap: 0.7rem;
    justify-content: center;
}
.lesson-actions .download, .lesson-actions .watch {
    background: #ffe066;
    color: #14236a;
    border-radius: 0;
    padding: 0.4rem 1.1rem;
    font-size: 1rem;
    font-weight: bold;
    text-decoration: none;
    box-shadow: 0 1px 4px #ffe06640;
    transition: background 0.2s, color 0.2s;
    border: none;
    display: inline-block;
}
.lesson-actions .watch {
    background: #14236a;
    color: #fff;
}
.lesson-actions .download:hover {
    background: #fbe6ea;
    color: #14236a;
}
.lesson-actions .watch:hover {
    background: #ffe066;
    color: #14236a;
}
/* مكتبة الفيديو */
.videos-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 2rem;
    margin-top: 2rem;
}
.video-group h3 {
    font-size: 1.2rem;
    color: #14236a;
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.video-card {
    background: #fbe6ea;
    border-radius: 0;
    box-shadow: 0 4px 18px #eaf6fa40;
    display: flex;
    align-items: center;
    padding: 1.2rem 1.5rem;
    gap: 1.2rem;
    margin-bottom: 1.2rem;
    transition: box-shadow 0.2s, transform 0.2s;
}
.video-card:hover {
    box-shadow: 0 8px 32px #14236a30;
    transform: translateY(-4px) scale(1.02);
}
.video-thumb {
    width: 160px;
    height: 160px;
    border-radius: 0;
    background: #d6f5d6;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    box-shadow: 0 2px 8px #d6f5d620;
    overflow: hidden;
}
.video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 0;
}
.video-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}
.video-title {
    font-size: 1.1rem;
    font-weight: bold;
    color: #14236a;
}
.video-actions {
    display: flex;
    gap: 0.7rem;
    align-items: center;
}
.video-actions .watch {
    background: #14236a;
    color: #fff;
    border: none;
    border-radius: 0;
    padding: 0.4rem 1.2rem;
    font-size: 1rem;
    font-weight: bold;
    text-decoration: none;
    box-shadow: 0 2px 8px #14236a40;
    transition: background 0.2s;
}
.video-actions .watch:hover {
    background: #ffe066;
    color: #14236a;
}
.video-actions button {
    width: 38px;
    height: 38px;
    border-radius: 0;
    border: none;
    background: #d6f5d6;
    color: #14236a;
    font-size: 1.2rem;
    cursor: pointer;
    transition: background 0.2s, color 0.2s;
    box-shadow: 0 1px 4px #d6f5d620;
    display: flex;
    align-items: center;
    justify-content: center;
}
.video-actions button.like:hover {
    background: #ffe066;
    color: #fff;
}
.video-actions button.comment:hover {
    background: #14236a;
    color: #fff;
}
/* مسافة بين الأسئلة المطروحة في المنتدى */
.questions-list ul > li {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #eaf6fa;
}
.questions-list ul > li:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}
@media (max-width: 900px) {
    .container {
        flex-direction: column;
    }
    .sidebar {
        min-width: 100%;
        box-shadow: none;
        padding: 1rem 0.5rem;
        display: flex;
        flex-direction: row;
        overflow-x: auto;
        border-radius: 0;
        margin: 0 0 1.5rem 0;
    }
    .sidebar ul {
        display: flex;
        flex-direction: row;
        gap: 0.5rem;
    }
    .sidebar li {
        margin-bottom: 0;
    }
    main {
        padding: 1rem 0.5rem;
    }
    section {
        padding: 1rem 0.7rem;
    }
    .lessons-cards {
        gap: 1.2rem;
        justify-content: center;
    }
    .lesson-card {
        min-width: 140px;
        max-width: 100%;
        padding: 1rem 0.7rem;
    }
    .lesson-thumb {
        width: 110px;
        height: 110px;
    }
}
@media (max-width: 600px) {
    .videos-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    .video-card {
        flex-direction: column;
        align-items: flex-start;
        padding: 1rem 0.7rem;
    }
    .video-thumb {
        margin-bottom: 0.5rem;
        width: 90px;
        height: 90px;
    }
    .lessons-cards {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }
    .lesson-card {
        min-width: 0;
        max-width: 100%;
        padding: 1rem 0.7rem;
    }
    .lesson-thumb {
        width: 90px;
        height: 90px;
    }
} 