        :root {
            --primary: #1A3A5F;
            --secondary: #D4AF37;
            --bg-app: #F0F4F8;
            --card-white: #FFFFFF;
            --text-muted: #6C757D;
            --success: #2E7D32;
        }

        * { box-sizing: border-box; margin: 0; padding: 0; -webkit-tap-highlight-color: transparent; }
        body { background: #E2E8EF; font-family: 'Cairo', sans-serif; display: flex; justify-content: center; min-height: 100vh; }
        
        .app-container {
            background: var(--bg-app);
            width: 100%;
            max-width: 414px;
            min-height: 100vh;
            padding: 20px 15px 110px;
            position: relative;
        }

        /* Header */
        .header-card {
            background: var(--primary);
            color: white;
            padding: 25px 20px;
            border-radius: 22px;
            margin-bottom: 20px;
            text-align: center;
            box-shadow: 0 4px 15px rgba(26, 58, 95, 0.2);
        }

        .header-card h1 { font-size: 1.3rem; margin-bottom: 8px; }
        .hasanat-badge {
            background: rgba(255, 255, 255, 0.15);
            padding: 5px 15px;
            border-radius: 20px;
            font-weight: 700;
            color: var(--secondary);
        }

        /* Tasks */
        .section-title {
            font-size: 0.9rem;
            font-weight: 800;
            color: var(--primary);
            margin: 20px 5px 10px;
            display: flex;
            align-items: center;
            gap: 8px;
        }

        .task-card {
            background: var(--card-white);
            padding: 16px;
            border-radius: 18px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 12px;
            box-shadow: 0 3px 10px rgba(0,0,0,0.04);
            border-right: 4px solid var(--secondary);
            transition: 0.3s;
        }

        .task-card.completed { opacity: 0.7; border-right-color: var(--success); }

        .task-info h3 { font-size: 0.95rem; color: var(--primary); margin-bottom: 4px; }
        .task-info p { font-size: 0.8rem; color: var(--success); font-weight: 700; }

        .done-btn {
            background: var(--primary);
            color: white;
            border: none;
            padding: 8px 18px;
            border-radius: 12px;
            font-family: 'Cairo';
            font-weight: 700;
            cursor: pointer;
        }

        .done-btn:disabled { background: #e0e0e0; color: #999; }

        /* Bottom Nav */
        .bottom-nav {
            position: fixed;
            bottom: 0; left: 50%; transform: translateX(-50%);
            width: 100%; max-width: 414px;
            background: white; display: flex; justify-content: space-around;
            padding: 12px 0; border-radius: 24px 24px 0 0;
            box-shadow: 0 -4px 20px rgba(0,0,0,0.07);
        }
        .nav-item { text-decoration: none; display: flex; flex-direction: column; align-items: center; color: var(--text-muted); font-size: 0.65rem; font-weight: 700; }
        .nav-item.active { color: var(--secondary); }
        .nav-item i { font-size: 1.2rem; margin-bottom: 3px; }
        body { 
            background: var(--bg-app); /* توحيد الخلفية */
            font-family: 'Cairo', sans-serif; 
            min-height: 100vh; 
            margin: 0; 
            padding: 0; 
        }
        .app-container { 
            background: var(--bg-app); 
            width: 100%; 
            max-width: 100%; /* ملء الشاشة بالكامل */
            min-height: 100vh; 
            position: relative; 
            padding: 20px; 
            padding-bottom: 100px; 
            box-sizing: border-box;
        }

        /* تنسيق كروت المهام في الشاشات الكبيرة */
        @media (min-width: 768px) {
            .tasks-section {
                display: grid;
                grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
                gap: 15px;
                max-width: 1000px;
                margin: 0 auto 30px auto;
            }
            .header-top, .score-box {
                max-width: 1000px;
                margin-left: auto;
                margin-right: auto;
            }
        }