@import "https://fonts.googleapis.com/css2?family=Cairo:wght@300;400;500;600;700;800;900&display=swap";:root{--color-maroon:#8b1538;--color-maroon-dark:#6b0f2b;--color-maroon-light:#a91d47;--color-gold:#d4af37;--color-gold-light:#e8cc6e;--color-gold-dark:#b8962e;--color-cream:#fff8f0;--color-cream-dark:#f5ede0;--color-teal:#0e7c7b;--color-teal-light:#12a09f;--color-teal-dark:#0a5e5d;--color-pink:#f9e4e4;--color-pink-dark:#f0c8c8;--color-white:#fff;--color-gray-50:#fafafa;--color-gray-100:#f5f5f5;--color-gray-200:#eee;--color-gray-300:#e0e0e0;--color-gray-400:#bdbdbd;--color-gray-500:#9e9e9e;--color-gray-600:#757575;--color-gray-700:#616161;--color-gray-800:#424242;--color-gray-900:#212121;--color-success:#2e7d32;--color-success-light:#e8f5e9;--color-success-bg:#c8e6c9;--color-error:#c62828;--color-error-light:#ffebee;--color-error-bg:#ffcdd2;--color-warning:#f57f17;--color-warning-light:#fff8e1;--color-info:#1565c0;--color-info-light:#e3f2fd;--font-family:"Cairo", "Segoe UI", Tahoma, sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.125rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000f;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000f;--shadow-lg:0 10px 25px #0000001a, 0 4px 10px #0000000d;--shadow-xl:0 20px 40px #0000001f, 0 8px 16px #00000014;--shadow-card:0 2px 12px #8b153814;--shadow-card-hover:0 8px 30px #8b153826;--shadow-glow-maroon:0 0 20px #8b153840;--shadow-glow-gold:0 0 20px #d4af374d;--shadow-glow-teal:0 0 20px #0e7c7b40;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-family);text-align:right;background-color:var(--color-cream);color:var(--color-gray-900);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;direction:rtl;min-height:100vh;line-height:1.7;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}img{max-width:100%;height:auto;display:block}button{font-family:var(--font-family);cursor:pointer;background:0 0;border:none;outline:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}.game-background{z-index:-1;background-color:var(--color-cream);background-image:radial-gradient(at 20%,#8b15380a 0%,#0000 50%),radial-gradient(at 80% 20%,#0e7c7b0a 0%,#0000 50%),radial-gradient(at 50% 80%,#d4af370a 0%,#0000 50%);position:fixed;inset:0}.app-container{max-width:800px;padding:var(--space-4);width:100%;margin:0 auto}.game-header{text-align:center;padding:var(--space-8) var(--space-4) var(--space-6)}.game-header__title{font-size:var(--font-size-3xl);color:var(--color-maroon);margin-bottom:var(--space-2);letter-spacing:-.02em;font-weight:800}.game-header__subtitle{font-size:var(--font-size-md);color:var(--color-gray-600);max-width:500px;margin:0 auto;font-weight:500;line-height:1.8}.progress-container{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200)}.progress-info{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.progress-label{font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:600}.progress-count{font-size:var(--font-size-sm);color:var(--color-maroon);background:var(--color-pink);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-weight:700}.progress-bar{background:var(--color-gray-200);border-radius:var(--radius-full);width:100%;height:10px;position:relative;overflow:hidden}.progress-bar__fill{background:linear-gradient(90deg, var(--color-maroon), var(--color-maroon-light));border-radius:var(--radius-full);height:100%;transition:width .6s cubic-bezier(.34,1.56,.64,1);position:relative}.progress-bar__fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-dots{justify-content:center;gap:var(--space-2);margin-top:var(--space-3);display:flex}.progress-dot{border-radius:var(--radius-full);background:var(--color-gray-300);width:10px;height:10px;transition:var(--transition-base)}.progress-dot--active{background:var(--color-maroon);transform:scale(1.2)}.progress-dot--completed{background:var(--color-success)}.card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card);transition:box-shadow var(--transition-base), transform var(--transition-base);border:1px solid #8b15380f}.card:hover{box-shadow:var(--shadow-card-hover)}.card--elevated{box-shadow:var(--shadow-lg)}.card--interactive{cursor:pointer}.card--interactive:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card--interactive:active{transform:translateY(0)}.activity{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg);border:1px solid #8b15380f;position:relative;overflow:hidden}.activity:before{content:"";background:linear-gradient(90deg, var(--color-maroon), var(--color-gold), var(--color-teal));height:4px;position:absolute;top:0;left:0;right:0}.activity__header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:2px solid var(--color-gray-100);display:flex}.activity__icon{font-size:var(--font-size-2xl);background:var(--color-pink);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.activity__title{font-size:var(--font-size-xl);color:var(--color-maroon);font-weight:700}.activity__instruction{font-size:var(--font-size-base);color:var(--color-gray-600);margin-bottom:var(--space-6);line-height:1.8}.activity__content{margin-top:var(--space-4)}.character-bubble{align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6);animation:.5s fadeInUp;display:flex}.character-avatar{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-maroon), var(--color-maroon-light));width:56px;height:56px;box-shadow:var(--shadow-md);color:var(--color-white);font-size:var(--font-size-lg);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.character-speech{background:var(--color-pink);border-radius:var(--radius-lg);border-top-right-radius:var(--radius-sm);padding:var(--space-4) var(--space-5);font-size:var(--font-size-base);color:var(--color-maroon-dark);flex:1;font-weight:500;line-height:1.8;position:relative}.character-speech:before{content:"";background:var(--color-pink);width:16px;height:16px;position:absolute;top:16px;right:-8px;transform:rotate(45deg)}.character-name{font-size:var(--font-size-xs);color:var(--color-maroon);margin-bottom:var(--space-1);font-weight:700}.question-text{font-size:var(--font-size-lg);color:var(--color-gray-900);margin-bottom:var(--space-6);text-align:center;padding:var(--space-4);background:var(--color-cream);border-radius:var(--radius-md);border-right:4px solid var(--color-maroon);font-weight:600;line-height:1.9}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-family);font-size:var(--font-size-base);transition:all var(--transition-base);border:2px solid #0000;min-height:48px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.btn:after{content:"";opacity:0;transition:opacity var(--transition-fast);background:linear-gradient(#ffffff26,#0000);position:absolute;inset:0}.btn:hover:after{opacity:1}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--color-maroon), var(--color-maroon-dark));color:var(--color-white);box-shadow:0 4px 12px #8b15384d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #8b153866}.btn-primary:active{transform:translateY(0)scale(.97)}.btn-secondary{background:var(--color-white);color:var(--color-maroon);border-color:var(--color-maroon)}.btn-secondary:hover{background:var(--color-pink)}.btn-gold{background:linear-gradient(135deg, var(--color-gold), var(--color-gold-dark));color:var(--color-gray-900);box-shadow:0 4px 12px #d4af374d}.btn-gold:hover{transform:translateY(-1px);box-shadow:0 6px 20px #d4af3766}.btn-teal{background:linear-gradient(135deg, var(--color-teal), var(--color-teal-dark));color:var(--color-white);box-shadow:0 4px 12px #0e7c7b4d}.btn-teal:hover{transform:translateY(-1px);box-shadow:0 6px 20px #0e7c7b66}.btn-success{background:linear-gradient(135deg, var(--color-success), #1b5e20);color:var(--color-white)}.btn-ghost{color:var(--color-gray-600);background:0 0}.btn-ghost:hover{background:var(--color-gray-100);color:var(--color-gray-900)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);min-height:36px}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-lg);border-radius:var(--radius-lg);min-height:56px}.btn-block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.option-card{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);font-size:var(--font-size-base);margin-bottom:var(--space-3);font-weight:500;line-height:1.7;display:flex}.option-card:hover{border-color:var(--color-maroon-light);background:var(--color-pink);transform:translate(-4px)}.option-card:active{transform:translate(-2px)scale(.99)}.option-card--selected{border-color:var(--color-maroon);background:var(--color-pink);box-shadow:0 0 0 3px #8b15381a}.option-card--correct{border-color:var(--color-success);background:var(--color-success-light);animation:.5s correctPulse;box-shadow:0 0 0 3px #2e7d321a}.option-card--incorrect{border-color:var(--color-error);background:var(--color-error-light);animation:.5s shake;box-shadow:0 0 0 3px #c628281a}.option-card--disabled{pointer-events:none;opacity:.7}.option-letter{border-radius:var(--radius-full);background:var(--color-gray-100);width:36px;height:36px;font-weight:700;font-size:var(--font-size-sm);color:var(--color-gray-600);transition:all var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.option-card--selected .option-letter{background:var(--color-maroon);color:var(--color-white)}.option-card--correct .option-letter{background:var(--color-success);color:var(--color-white)}.option-card--incorrect .option-letter{background:var(--color-error);color:var(--color-white)}.multiselect-option{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);margin-bottom:var(--space-3);display:flex}.multiselect-option:hover{border-color:var(--color-teal-light);background:#0e7c7b0a}.multiselect-option--checked{border-color:var(--color-teal);background:#0e7c7b0f}.multiselect-checkbox{border:2px solid var(--color-gray-400);border-radius:var(--radius-sm);width:24px;height:24px;transition:all var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.multiselect-option--checked .multiselect-checkbox{background:var(--color-teal);border-color:var(--color-teal);color:var(--color-white)}.classify-container{gap:var(--space-6);flex-direction:column;display:flex}.classify-items{gap:var(--space-3);padding:var(--space-4);background:var(--color-cream);border-radius:var(--radius-md);border:2px dashed var(--color-gray-300);flex-wrap:wrap;min-height:80px;display:flex}.classify-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-full);font-size:var(--font-size-sm);cursor:grab;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;font-weight:500;display:inline-flex}.classify-item:hover{border-color:var(--color-maroon-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.classify-item:active{cursor:grabbing;box-shadow:var(--shadow-lg);z-index:10;transform:scale(1.05)}.classify-item--dragging{opacity:.5;transform:scale(.95)}.classify-item--placed{opacity:.6;pointer-events:none}.classify-categories{gap:var(--space-4);display:grid}.classify-category{border-radius:var(--radius-lg);padding:var(--space-4);border:2px dashed var(--color-gray-300);min-height:100px;transition:all var(--transition-base)}.classify-category--active{border-color:var(--color-maroon);background:#8b153808;border-style:solid}.classify-category__label{font-size:var(--font-size-sm);margin-bottom:var(--space-3);align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:2px solid;font-weight:700;display:flex}.classify-category__items{gap:var(--space-2);flex-wrap:wrap;min-height:40px;display:flex}.drag-over{box-shadow:var(--shadow-glow-gold);border-color:var(--color-gold)!important;background:#d4af3714!important;border-style:solid!important}.matching-container{gap:var(--space-8);grid-template-columns:1fr 1fr;display:grid}.matching-column{gap:var(--space-3);flex-direction:column;display:flex}.matching-column__title{font-size:var(--font-size-sm);color:var(--color-gray-500);text-align:center;margin-bottom:var(--space-2);font-weight:700}.matching-card{padding:var(--space-3) var(--space-4);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:pointer;text-align:center;font-size:var(--font-size-sm);transition:all var(--transition-base);font-weight:500;line-height:1.7}.matching-card:hover{border-color:var(--color-maroon-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.matching-card--selected{border-color:var(--color-maroon);background:var(--color-pink);box-shadow:var(--shadow-glow-maroon);transform:scale(1.02)}.matching-card--matched{border-color:var(--color-success);background:var(--color-success-light);pointer-events:none}.matching-card--wrong{border-color:var(--color-error);animation:.5s shake}.tf-card-container{gap:var(--space-4);flex-direction:column;display:flex}.tf-card{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md);border:2px solid var(--color-gray-200);text-align:center;transition:all var(--transition-slow);position:relative;overflow:hidden}.tf-card__emoji{font-size:var(--font-size-3xl);margin-bottom:var(--space-3)}.tf-card__text{font-size:var(--font-size-md);color:var(--color-gray-800);margin-bottom:var(--space-6);font-weight:600;line-height:1.9}.tf-buttons{gap:var(--space-4);justify-content:center;display:flex}.tf-btn{padding:var(--space-3) var(--space-8);border-radius:var(--radius-full);font-size:var(--font-size-base);min-width:120px;transition:all var(--transition-base);font-weight:700}.tf-btn--true{background:var(--color-success-light);color:var(--color-success);border:2px solid var(--color-success)}.tf-btn--true:hover{background:var(--color-success);color:var(--color-white);box-shadow:0 4px 12px #2e7d324d}.tf-btn--false{background:var(--color-error-light);color:var(--color-error);border:2px solid var(--color-error)}.tf-btn--false:hover{background:var(--color-error);color:var(--color-white);box-shadow:0 4px 12px #c628284d}.tf-card--correct{border-color:var(--color-success);background:var(--color-success-light)}.tf-card--incorrect{border-color:var(--color-error);background:var(--color-error-light)}.ordering-steps{gap:var(--space-3);flex-direction:column;display:flex}.ordering-step{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);cursor:grab;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;display:flex}.ordering-step:hover{border-color:var(--color-teal-light);box-shadow:var(--shadow-md)}.ordering-step:active{cursor:grabbing;box-shadow:var(--shadow-lg);transform:scale(1.01)}.ordering-step--dragging{opacity:.4}.ordering-step__number{border-radius:var(--radius-full);background:var(--color-gray-200);width:36px;height:36px;font-weight:700;font-size:var(--font-size-sm);color:var(--color-gray-600);transition:all var(--transition-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.ordering-step--correct .ordering-step__number{background:var(--color-success);color:var(--color-white)}.ordering-step--incorrect .ordering-step__number{background:var(--color-error);color:var(--color-white)}.ordering-step__emoji{font-size:var(--font-size-xl);flex-shrink:0}.ordering-step__text{font-size:var(--font-size-base);flex:1;font-weight:500;line-height:1.7}.ordering-step__handle{color:var(--color-gray-400);font-size:var(--font-size-lg);cursor:grab;padding:var(--space-1)}.verse-container{text-align:center;padding:var(--space-8);background:linear-gradient(135deg, var(--color-cream), var(--color-pink));border-radius:var(--radius-lg);margin-bottom:var(--space-6);border:2px solid #8b15381a}.verse-text{font-size:var(--font-size-xl);color:var(--color-maroon-dark);font-weight:700;line-height:2}.verse-blank{border-bottom:3px dashed var(--color-maroon);min-width:200px;margin:0 var(--space-2);padding:var(--space-1) var(--space-2);color:var(--color-teal);font-weight:700;display:inline-block}.scenario-card{background:linear-gradient(135deg, var(--color-cream), #0e7c7b0a);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6);border-right:4px solid var(--color-teal)}.scenario-emoji{font-size:var(--font-size-3xl);text-align:center;margin-bottom:var(--space-3)}.scenario-text{font-size:var(--font-size-md);color:var(--color-gray-800);text-align:center;font-weight:600;line-height:1.9}.feedback{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin-top:var(--space-4);align-items:center;gap:var(--space-3);font-weight:600;animation:.3s fadeInUp;display:flex}.feedback--correct{background:var(--color-success-light);color:var(--color-success);border:1px solid var(--color-success-bg)}.feedback--incorrect{background:var(--color-error-light);color:var(--color-error);border:1px solid var(--color-error-bg)}.feedback--info{background:var(--color-info-light);color:var(--color-info);border:1px solid #1565c033}.feedback__icon{font-size:var(--font-size-xl);flex-shrink:0}.feedback__text{font-size:var(--font-size-base);line-height:1.7}.nav-buttons{margin-top:var(--space-8);padding-top:var(--space-6);border-top:2px solid var(--color-gray-100);justify-content:space-between;align-items:center;display:flex}.nav-buttons--center{justify-content:center}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;padding:var(--space-4);background:#0009;justify-content:center;align-items:center;animation:.3s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-8);width:100%;max-width:500px;box-shadow:var(--shadow-xl);text-align:center;animation:.4s cubic-bezier(.34,1.56,.64,1) scaleIn;position:relative}.modal__close{top:var(--space-4);left:var(--space-4);border-radius:var(--radius-full);background:var(--color-gray-100);width:36px;height:36px;font-size:var(--font-size-lg);color:var(--color-gray-500);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute}.modal__close:hover{background:var(--color-gray-200);color:var(--color-gray-700)}.stars-display{justify-content:center;gap:var(--space-2);margin:var(--space-4) 0;display:flex}.star{font-size:var(--font-size-3xl);filter:grayscale()opacity(.3);transition:all .4s cubic-bezier(.34,1.56,.64,1)}.star--earned{filter:grayscale(0%)opacity();animation:.6s starBounce}@keyframes starBounce{0%{transform:scale(0)rotate(-30deg)}50%{transform:scale(1.4)rotate(10deg)}70%{transform:scale(.9)rotate(-5deg)}to{transform:scale(1)rotate(0)}}.score-display{text-align:center;padding:var(--space-4)}.score-number{font-size:var(--font-size-4xl);color:var(--color-maroon);font-weight:900;line-height:1}.score-label{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-top:var(--space-1);font-weight:600}.achievement-badge{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:linear-gradient(135deg, var(--color-gold), var(--color-gold-dark));border-radius:var(--radius-full);color:var(--color-gray-900);font-weight:700;font-size:var(--font-size-sm);box-shadow:var(--shadow-glow-gold);display:inline-flex}.completion-screen{text-align:center;padding:var(--space-8) var(--space-4);animation:.6s fadeInUp}.completion-screen__confetti{margin-bottom:var(--space-4);font-size:4rem;animation:1s infinite bounce}.completion-screen__title{font-size:var(--font-size-3xl);color:var(--color-maroon);margin-bottom:var(--space-3);font-weight:800}.completion-screen__subtitle{font-size:var(--font-size-lg);color:var(--color-gray-600);margin-bottom:var(--space-6);line-height:1.8}.completion-screen__score-card{background:linear-gradient(135deg, var(--color-maroon), var(--color-maroon-dark));color:var(--color-white);border-radius:var(--radius-xl);padding:var(--space-8);margin:var(--space-6) auto;max-width:320px;box-shadow:var(--shadow-glow-maroon)}.completion-screen__score-value{font-size:var(--font-size-4xl);margin-bottom:var(--space-2);font-weight:900;line-height:1}.completion-screen__score-text{font-size:var(--font-size-md);opacity:.9}.completion-screen__message{font-size:var(--font-size-lg);color:var(--color-teal);margin:var(--space-6) 0;padding:var(--space-4);border-radius:var(--radius-md);background:#0e7c7b0f;font-weight:600;line-height:1.8}.completion-screen__actions{gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;justify-content:center;display:flex}.hint{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-warning-light);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-warning);margin-bottom:var(--space-4);font-weight:600;display:flex}.activity-nav{justify-content:center;gap:var(--space-3);margin:var(--space-6) 0;flex-wrap:wrap;display:flex}.activity-nav__dot{border-radius:var(--radius-full);width:44px;height:44px;font-weight:700;font-size:var(--font-size-sm);border:2px solid var(--color-gray-300);background:var(--color-white);color:var(--color-gray-500);transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.activity-nav__dot--active{border-color:var(--color-maroon);background:var(--color-maroon);color:var(--color-white);box-shadow:var(--shadow-glow-maroon);transform:scale(1.15)}.activity-nav__dot--completed{border-color:var(--color-success);background:var(--color-success);color:var(--color-white)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:.4s forwards fadeIn}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in-up{animation:.5s forwards fadeInUp}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.fade-in-down{animation:.5s forwards fadeInDown}@keyframes slideInRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.slide-in-right{animation:.5s forwards slideInRight}@keyframes slideInLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:.5s forwards slideInLeft}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.scale-in{animation:.4s cubic-bezier(.34,1.56,.64,1) forwards scaleIn}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.bounce{animation:1s infinite bounce}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-6px)}20%,40%,60%,80%{transform:translate(6px)}}.shake{animation:.5s shake}@keyframes correctPulse{0%{transform:scale(1)}50%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}.wiggle{animation:.4s wiggle}@keyframes confettiFall{0%{opacity:1;transform:translateY(-100vh)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.stagger-children>*{opacity:0;animation:.4s forwards fadeInUp}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.text-center{text-align:center}.text-right{text-align:right}.text-maroon{color:var(--color-maroon)}.text-teal{color:var(--color-teal)}.text-gold{color:var(--color-gold)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.text-muted{color:var(--color-gray-500)}.bg-cream{background-color:var(--color-cream)}.bg-pink{background-color:var(--color-pink)}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.flex{display:flex}.flex-col{flex-direction:column}.flex-center{justify-content:center;align-items:center}.flex-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.hidden{display:none}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=768px){html{font-size:15px}.app-container{padding:var(--space-3)}.activity{padding:var(--space-5);border-radius:var(--radius-lg)}.game-header__title{font-size:var(--font-size-2xl)}.matching-container{gap:var(--space-4);grid-template-columns:1fr}.tf-buttons{flex-direction:column}.tf-btn{width:100%}.nav-buttons{gap:var(--space-3);flex-direction:column-reverse}.nav-buttons .btn{width:100%}.completion-screen__actions{flex-direction:column}.completion-screen__actions .btn{width:100%}}@media (width<=480px){html{font-size:14px}.activity{padding:var(--space-4)}.character-bubble{text-align:center;flex-direction:column;align-items:center}.character-speech{border-top-right-radius:var(--radius-lg)}.character-speech:before{display:none}.question-text{font-size:var(--font-size-base);padding:var(--space-3)}.verse-text{font-size:var(--font-size-lg)}.activity-nav__dot{width:36px;height:36px;font-size:var(--font-size-xs)}.classify-item{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3)}}.activity-character{object-fit:contain;width:280px;height:280px}.activity-character--large{object-fit:contain;width:300px;height:300px}.activity-character--small{object-fit:contain;width:180px;height:180px}.activity-character--scene{object-fit:contain;width:400px;height:400px}@media (width<=768px){.activity-character{width:120px;height:120px}.activity-character--large{width:140px;height:140px}.activity-character--small{width:80px;height:80px}.activity-character--scene{width:160px;height:160px}}.landing-character{object-fit:contain;filter:drop-shadow(0 8px 20px #00000040);flex-shrink:0;width:520px;height:520px}@media (width<=768px){.landing-character{width:60vw;max-width:400px;height:60vw;max-height:400px}}@media (width<=480px){.landing-character{width:65vw;height:65vw}}@media print{.nav-buttons,.progress-container,.overlay{display:none}.activity{box-shadow:none;border:1px solid var(--color-gray-300);break-inside:avoid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus-visible{outline:3px solid var(--color-teal);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,.option-card:focus-visible,.matching-card:focus-visible,.ordering-step:focus-visible{outline:3px solid var(--color-teal);outline-offset:2px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-cream)}::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}::selection{color:var(--color-maroon-dark);background:#8b153826}
