@import"https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Open+Sans:wght@300;400;500;600;700&family=Amiri:wght@400;700&display=swap";/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:"Open Sans",sans-serif;--font-serif:"EB Garamond",serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:#faf7f2;--color-foreground:#222;--color-card:#fff;--color-primary:#1a3150;--color-primary-foreground:#fff;--color-secondary:#f5f0e8;--color-muted:#e8dfd4;--color-muted-foreground:#717182;--color-accent:#c5a253;--color-destructive:#c44040;--color-border:#1a31501a;--color-success:#4a8c5c;--font-arabic:"Amiri",serif}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}}*{border-color:var(--color-border);box-sizing:border-box}body{background-color:var(--color-background);color:var(--color-foreground);font-family:var(--font-sans);min-height:100vh;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-serif)}.minhaj-page{max-width:900px;margin:0 auto;padding:0 1.5rem 4rem}.hero{text-align:center;border-bottom:1px solid var(--color-border);margin-bottom:2.5rem;padding:3rem 1rem 2.5rem}.hero-arabic{font-family:var(--font-arabic);color:var(--color-accent);margin-bottom:.25rem;font-size:3.5rem;line-height:1.2}.hero-title{color:var(--color-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.hero-subtitle{color:var(--color-muted-foreground);max-width:500px;margin:0 auto;font-size:.9rem;line-height:1.6}.hero-stats{justify-content:center;gap:2.5rem;margin-top:1.5rem;display:flex}.hero-stat{text-align:center}.hero-stat-num{font-family:var(--font-serif);color:var(--color-accent);font-size:1.5rem;font-weight:700}.hero-stat-label{color:var(--color-muted-foreground);text-transform:uppercase;letter-spacing:.5px;font-size:.7rem}.tab-nav{border-bottom:2px solid var(--color-border);gap:0;margin-bottom:2rem;display:flex}.tab-btn{font-family:var(--font-sans);color:var(--color-muted-foreground);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;margin-bottom:-2px;padding:.65rem 1rem;font-size:.85rem;font-weight:600;transition:color .2s,border-color .2s}.tab-btn:hover{color:var(--color-foreground)}.tab-active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.analytics-dashboard{padding-bottom:2rem}.analytics-loading,.analytics-offline{text-align:center;color:var(--color-muted-foreground);padding:3rem 1rem}.analytics-offline-icon{margin-bottom:.5rem;font-size:2rem}.analytics-offline-text,.analytics-loading-text{max-width:400px;margin:0 auto;font-size:.85rem;line-height:1.5}.analytics-section{margin-bottom:2rem}.analytics-section-header{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.analytics-section-icon{font-size:1.1rem;line-height:1}.analytics-section-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.15rem;font-weight:600}.analytics-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:.75rem;padding:1rem 1.25rem}.analytics-card-title{text-transform:uppercase;letter-spacing:.5px;color:var(--color-muted-foreground);margin-bottom:.75rem;font-size:.75rem;font-weight:600}.chart-empty{text-align:center;color:var(--color-muted-foreground);padding:1.5rem 0;font-size:.8rem}.bar-chart-wrapper,.line-chart-wrapper{width:100%;overflow-x:auto}.bar-chart-svg,.line-chart-svg{width:100%;display:block}.bar-rect:hover{opacity:1}.bar-label,.line-chart-label{fill:var(--color-muted-foreground);font-size:8px;font-family:var(--font-sans)}.line-chart-dot:hover{r:5;stroke-width:2px}.bar-chart-horizontal{flex-direction:column;gap:.4rem;display:flex}.bar-h-row{align-items:center;gap:.5rem;display:flex}.bar-h-label{width:100px;color:var(--color-muted-foreground);text-align:right;text-transform:capitalize;flex-shrink:0;font-size:.7rem}.bar-h-track{background:var(--color-muted);border-radius:4px;flex:1;height:8px;overflow:hidden}.bar-h-fill{border-radius:4px;min-width:2px;height:100%;transition:width .5s ease-out}.bar-h-value{width:30px;color:var(--color-foreground);flex-shrink:0;font-size:.7rem;font-weight:600}.progress-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring-svg{transform:rotate(0)}.progress-ring-arc{transition:stroke-dashoffset 1s ease-out}.progress-ring-content{text-align:center;position:absolute}.progress-ring-value{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;line-height:1}.progress-ring-label{color:var(--color-muted-foreground);margin-top:.15rem;font-size:.65rem}.progress-ring-sublabel{color:var(--color-muted-foreground);font-size:.55rem}.weekly-comparison{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.stat-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;padding:.85rem 1rem}.stat-card-label{text-transform:uppercase;letter-spacing:.5px;color:var(--color-accent);margin-bottom:.5rem;font-size:.7rem;font-weight:600}.stat-card-grid{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.stat-item-value{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.1rem;font-weight:700;line-height:1}.stat-item-label{color:var(--color-muted-foreground);font-size:.6rem}.retention-top-row{gap:.75rem;margin-bottom:.75rem;display:flex}.retention-ring-card{flex-shrink:0;justify-content:center;align-items:center;display:flex}.phase-dist-card{flex:1}.phase-dist-row{border-bottom:1px solid var(--color-border);justify-content:space-between;padding:.25rem 0;font-size:.8rem;display:flex}.phase-dist-row:last-child{border-bottom:none}.phase-dist-label{text-transform:capitalize;color:var(--color-foreground)}.phase-dist-count{color:var(--color-accent);font-weight:600}.blind-spots-grid{flex-direction:column;gap:.5rem;display:flex}.blind-spot-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.5rem;padding:.65rem .85rem}.blind-spot-header{align-items:center;gap:.5rem;display:flex}.blind-spot-severity{border-radius:50%;flex-shrink:0;width:8px;height:8px}.blind-spot-name{color:var(--color-foreground);text-transform:capitalize;flex:1;font-size:.8rem;font-weight:600}.blind-spot-trend{font-size:.7rem;font-weight:600}.blind-spot-stats{color:var(--color-muted-foreground);gap:1rem;margin-top:.25rem;font-size:.65rem;display:flex}@media(max-width:640px){.weekly-comparison{grid-template-columns:1fr}.retention-top-row{flex-direction:column}.bar-h-label{width:70px}}.recommendations{margin-bottom:2rem}.recommendations-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.recommendations-icon{font-size:1.1rem;line-height:1}.recommendations-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1rem;font-weight:600}.recommendations-list{flex-direction:column;gap:.5rem;display:flex}.rec-card{background:var(--color-card);border:1px solid var(--color-border);border-left:3px solid;border-radius:.5rem;align-items:flex-start;gap:.65rem;padding:.75rem 1rem;transition:transform .15s;display:flex}.rec-card:hover{transform:translate(2px)}.rec-icon{flex-shrink:0;margin-top:.1rem;font-size:1.2rem;line-height:1}.rec-content{flex:1}.rec-title{color:var(--color-foreground);margin-bottom:.15rem;font-size:.85rem;font-weight:600}.rec-desc{color:var(--color-muted-foreground);font-size:.75rem;line-height:1.4}.challenges-section{margin-bottom:2rem}.challenges-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.challenges-icon{font-size:1.1rem;line-height:1}.challenges-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1rem;font-weight:600}.challenges-list{flex-direction:column;gap:.65rem;display:flex}.challenge-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;padding:.85rem 1rem;transition:box-shadow .2s}.challenge-card:hover{box-shadow:0 2px 8px #1a31500f}.challenge-complete{border-color:var(--color-success);background:#4a8c5c08}.challenge-top{align-items:flex-start;gap:.65rem;margin-bottom:.6rem;display:flex}.challenge-emoji{flex-shrink:0;font-size:1.3rem;line-height:1}.challenge-info{flex:1}.challenge-name{color:var(--color-foreground);font-size:.85rem;font-weight:600}.challenge-desc{color:var(--color-muted-foreground);font-size:.7rem;line-height:1.4}.challenge-meta{text-align:right;flex-shrink:0}.challenge-type{text-transform:uppercase;letter-spacing:.5px;color:var(--color-accent);font-size:.6rem;font-weight:600;display:block}.challenge-timer{color:var(--color-muted-foreground);margin-top:.1rem;font-size:.65rem;display:block}.challenge-bottom{flex-direction:column;gap:.3rem;display:flex}.challenge-progress-bar{background:var(--color-muted);border-radius:3px;height:6px;overflow:hidden}.challenge-progress-fill{background:linear-gradient(90deg,var(--color-accent),#d4b56a);border-radius:3px;height:100%;transition:width .5s ease-out}.challenge-progress-text{color:var(--color-muted-foreground);justify-content:space-between;font-size:.65rem;display:flex}.challenge-xp{color:var(--color-accent);font-weight:600}.gamification-dashboard{border-bottom:1px solid var(--color-border);margin-bottom:2.5rem;padding-bottom:2rem}.gam-stats{gap:.75rem;margin-bottom:1.5rem;display:flex}.gam-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;flex:1;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:box-shadow .2s;display:flex}.gam-card:hover{box-shadow:0 2px 8px #1a31500f}.gam-level-circle{background:linear-gradient(135deg,var(--color-accent),#d4b56a);width:2.5rem;height:2.5rem;color:var(--color-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex}.gam-level-info{flex:1;min-width:0}.gam-level-titles{justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.gam-level-en{color:var(--color-foreground);font-size:.85rem;font-weight:600}.gam-level-ar{font-family:var(--font-arabic);color:var(--color-accent);font-size:.85rem}.gam-xp-bar{background:var(--color-muted);border-radius:3px;height:5px;margin-top:.35rem;overflow:hidden}.gam-xp-fill{background:linear-gradient(90deg,var(--color-accent),#d4b56a);border-radius:3px;height:100%;transition:width .5s ease-out}.gam-xp-label{color:var(--color-muted-foreground);margin-top:.2rem;font-size:.65rem}.gam-streak-flame{filter:grayscale()opacity(.4);flex-shrink:0;font-size:1.5rem;line-height:1;transition:filter .3s}.gam-streak-flame.flame-active{filter:none;animation:1.5s ease-in-out infinite streak-fire}.gam-streak-info{flex:1}.gam-streak-count{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.5rem;font-weight:700;line-height:1}.gam-streak-label{color:var(--color-muted-foreground);font-size:.7rem}.gam-multiplier-badge{background:var(--color-accent);color:var(--color-primary);border-radius:1rem;padding:.15rem .5rem;font-size:.7rem;font-weight:700}.streak-calendar{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:1.25rem;padding:1rem 1.25rem}.streak-calendar-header{color:var(--color-foreground);justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.85rem;font-weight:500;display:flex}.streak-calendar-count{color:var(--color-muted-foreground);font-size:.7rem}.streak-calendar-grid-wrapper{padding-bottom:.25rem;overflow-x:auto}.streak-calendar-grid{gap:2px;display:inline-flex}.streak-calendar-days{flex-direction:column;gap:2px;margin-right:4px;display:flex}.streak-calendar-day-label{width:1.5rem;height:13px;color:var(--color-muted-foreground);justify-content:flex-end;align-items:center;padding-right:2px;font-size:9px;display:flex}.streak-calendar-week{flex-direction:column;gap:2px;display:flex}.streak-calendar-cell{border-radius:2px;width:13px;height:13px;transition:background-color .3s}.cell-empty{background:0 0}.cell-idle{background:var(--color-muted)}.cell-practiced{background:var(--color-accent)}.cell-today{background:var(--color-muted);outline:1.5px solid var(--color-accent);outline-offset:-1px}.streak-calendar-months{margin-top:4px;display:flex}.streak-calendar-month{color:var(--color-muted-foreground);font-size:9px}.streak-calendar-legend{color:var(--color-muted-foreground);justify-content:flex-end;align-items:center;gap:4px;margin-top:.5rem;font-size:9px;display:flex}.daily-challenge{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;margin-bottom:1.25rem;padding:1rem 1.25rem}.daily-challenge-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.daily-challenge-icon{font-size:1.1rem;line-height:1}.daily-challenge-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1rem;font-weight:600}.daily-challenge-score{color:var(--color-success);margin-left:auto;font-size:.75rem;font-weight:600}.daily-challenge-progress{color:var(--color-muted-foreground);margin-left:auto;font-size:.7rem}.daily-challenge-complete{justify-content:space-between;align-items:center;padding:.75rem 0 .25rem;display:flex}.daily-complete-message{color:var(--color-foreground);font-size:.85rem}.daily-xp-badge{background:linear-gradient(135deg,var(--color-accent),#d4b56a);color:var(--color-primary);border-radius:1rem;padding:.25rem .75rem;font-size:.8rem;font-weight:700;animation:.6s cubic-bezier(.34,1.56,.64,1) bounce-in}.daily-question{margin-bottom:.75rem}.daily-question-ar{font-family:var(--font-arabic);color:var(--color-foreground);margin-bottom:.25rem;font-size:1.15rem;line-height:1.8}.daily-question-en{color:var(--color-muted-foreground);font-size:.8rem}.daily-question-category{text-transform:uppercase;letter-spacing:.5px;color:var(--color-accent);margin-top:.25rem;font-size:.6rem;font-weight:600}.daily-options{flex-direction:column;gap:.5rem;display:flex}.daily-option{background:var(--color-secondary);border:1.5px solid var(--color-border);color:var(--color-foreground);cursor:pointer;text-align:left;font-size:.85rem;font-family:var(--font-sans);border-radius:.6rem;align-items:center;gap:.65rem;padding:.65rem .9rem;transition:border-color .2s,background .2s,transform .15s;display:flex}.daily-option:hover:not(:disabled){border-color:var(--color-accent);background:#c5a2530f;transform:translate(2px)}.daily-option:disabled{cursor:default}.daily-option-letter{background:var(--color-muted);width:1.5rem;height:1.5rem;color:var(--color-muted-foreground);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;display:flex}.daily-option-text{flex:1}.daily-option-icon{flex-shrink:0;font-size:.85rem;font-weight:700}.daily-option-correct{border-color:var(--color-success)!important;background:#4a8c5c14!important}.daily-option-correct .daily-option-letter{background:var(--color-success);color:#fff}.daily-option-correct .daily-option-icon{color:var(--color-success)}.daily-option-wrong{border-color:var(--color-destructive)!important;background:#c440400f!important}.daily-option-wrong .daily-option-letter{background:var(--color-destructive);color:#fff}.daily-option-wrong .daily-option-icon{color:var(--color-destructive)}.daily-option-disabled{opacity:.5}.daily-next-btn{background:var(--color-primary);width:100%;color:var(--color-primary-foreground);cursor:pointer;font-size:.8rem;font-weight:600;font-family:var(--font-sans);border:none;border-radius:.5rem;margin-top:.75rem;padding:.55rem 1rem;transition:opacity .15s,transform .15s;display:block}.daily-next-btn:hover{opacity:.9;transform:translateY(-1px)}.achievements-section{background:var(--color-card);border:1px solid var(--color-border);border-radius:.75rem;padding:1rem 1.25rem}.achievements-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.achievements-icon{font-size:1.1rem;line-height:1}.achievements-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1rem;font-weight:600}.achievements-count{color:var(--color-muted-foreground);margin-left:auto;font-size:.7rem}.achievement-medals{gap:1rem;margin-bottom:.75rem;font-size:.8rem;display:flex}.achievement-medal{color:var(--color-muted-foreground);align-items:center;gap:.2rem;font-weight:600;display:flex}.achievement-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;display:grid}.achievement-card{background:var(--color-background);border:1.5px solid var(--color-border);border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem .65rem;transition:border-color .2s,box-shadow .3s,transform .2s;display:flex;position:relative}.achievement-unlocked{animation:.5s cubic-bezier(.34,1.56,.64,1) aha-burst}.achievement-unlocked:hover{transform:translateY(-1px)}.achievement-locked{opacity:.35;filter:grayscale(.5)}.achievement-card-icon{flex-shrink:0;font-size:1.1rem;line-height:1}.achievement-card-info{flex:1;min-width:0;overflow:hidden}.achievement-card-name{color:var(--color-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;font-weight:600;overflow:hidden}.achievement-card-ar{font-family:var(--font-arabic);color:var(--color-accent);white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;overflow:hidden}.achievement-card-desc{color:var(--color-muted-foreground);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.achievement-tier-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.confetti-overlay{pointer-events:none;z-index:100;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.confetti-particle{animation:3s ease-in forwards confetti-fall;position:absolute;top:-20px}.confetti-piece{width:12px;height:12px;animation:1s linear infinite confetti-spin}@keyframes streak-fire{0%,to{filter:brightness();transform:scale(1)rotate(0)}25%{filter:brightness(1.2);transform:scale(1.15)rotate(-3deg)}50%{filter:brightness(1.1);transform:scale(1.05)rotate(2deg)}75%{filter:brightness(1.15);transform:scale(1.1)rotate(-1deg)}}@keyframes aha-burst{0%{opacity:0;transform:scale(.8)}40%{opacity:1;transform:scale(1.08)}60%{transform:scale(.95)}to{transform:scale(1)}}@keyframes bounce-in{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.15)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}@keyframes confetti-spin{0%{transform:rotateY(0)rotateX(0)}to{transform:rotateY(360deg)rotateX(180deg)}}@keyframes gentle-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.97)}}@media(max-width:640px){.gam-stats{flex-direction:column}.achievement-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}.timeline{padding-left:3rem;position:relative}.timeline:before{content:"";background:linear-gradient(to bottom,var(--color-primary),transparent);opacity:.15;width:2px;position:absolute;top:0;bottom:0;left:1rem}.phase{margin-bottom:3rem;position:relative}.phase:last-child{margin-bottom:0}.phase-dot{background:var(--phase-color);color:#fff;width:1.5rem;height:1.5rem;box-shadow:0 0 0 3px var(--color-background),0 0 0 5px var(--phase-color);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex;position:absolute;top:.15rem;left:-2.4rem}.phase-label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:1px;color:var(--phase-color);margin-bottom:.1rem;font-size:.7rem;font-weight:600}.phase-title{color:var(--color-primary);margin-bottom:.25rem;font-size:1.35rem;font-weight:700}.phase-desc{color:var(--color-muted-foreground);margin-bottom:1rem;font-size:.85rem;line-height:1.5}.phase-label-row{align-items:center;gap:.75rem;display:flex}.phase-pct{font-family:var(--font-serif);font-size:.9rem;font-weight:700}.phase-progress-bar{background:var(--color-border);border-radius:2px;width:100%;height:4px;margin-bottom:.5rem;overflow:hidden}.phase-progress-fill{border-radius:2px;height:100%;transition:width .5s ease-out}.loading-indicator{text-align:center;color:var(--color-muted-foreground);padding:2rem;font-size:.85rem}.tool-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.tool-card{background:var(--color-card);border:1px solid var(--color-border);color:inherit;border-radius:.75rem;align-items:flex-start;gap:.75rem;padding:1rem;text-decoration:none;transition:border-color .2s,transform .15s,box-shadow .2s;display:flex}.tool-card:hover{border-color:var(--phase-color);transform:translateY(-2px);box-shadow:0 4px 12px #1a315014}.tool-card-emoji{flex-shrink:0;margin-top:.1rem;font-size:1.5rem;line-height:1}.tool-card-body{flex:1;min-width:0}.tool-card-name{font-family:var(--font-sans);color:var(--color-foreground);margin-bottom:.2rem;font-size:.9rem;font-weight:600}.tool-card-desc{color:var(--color-muted-foreground);font-size:.78rem;line-height:1.4}.tool-card-complete{border-color:var(--color-success);background:#4a8c5c08}.tool-card-progress{align-items:center;gap:.5rem;margin-top:.4rem;display:flex}.tool-card-progress-bar{background:var(--color-border);border-radius:1.5px;flex:1;height:3px;overflow:hidden}.tool-card-progress-fill{border-radius:1.5px;height:100%;transition:width .5s ease-out}.tool-card-progress-label{flex-shrink:0;font-size:.65rem;font-weight:600}.tool-card-tag{text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:.5rem;flex-shrink:0;margin-top:.15rem;padding:.15rem .5rem;font-size:.6rem;font-weight:600}@media(max-width:640px){.hero-arabic{font-size:2.5rem}.hero-title{font-size:1.35rem}.timeline{padding-left:2.5rem}.phase-dot{width:1.25rem;height:1.25rem;font-size:.65rem;left:-2rem}.tool-grid{grid-template-columns:1fr}.hero-stats{gap:1.5rem}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
