@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-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}.grid{display:grid}.hidden{display:none}.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}.gam-dashboard{border-bottom:1px solid var(--color-border);flex-direction:column;gap:.75rem;margin-bottom:2.5rem;padding-bottom:2rem;display:flex}.gam-section-label{text-transform:uppercase;letter-spacing:.05em;color:#1a315073;font-size:.7rem;font-weight:600}.gam-sub-label{text-transform:uppercase;letter-spacing:.05em;color:#1a315066;margin-bottom:.4rem;font-size:.65rem;font-weight:600}.gam-stats-row{gap:.75rem;display:flex}.gam-stat-card{background:var(--color-card);border:1px solid var(--color-border);text-align:center;border-radius:.875rem;flex:1;padding:1rem;transition:box-shadow .2s}.gam-stat-card:hover{box-shadow:0 2px 8px #1a31500f}.gam-stat-ring{width:48px;height:48px;margin:0 auto .5rem;position:relative}.gam-stat-ring-label{color:var(--color-foreground);justify-content:center;align-items:center;font-size:1rem;font-weight:700;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.gam-stat-emoji{margin-bottom:.25rem;font-size:1.75rem;line-height:1}.gam-stat-emoji .flame-inactive{filter:grayscale()opacity(.4)}.gam-stat-emoji .flame-active{animation:1.5s ease-in-out infinite streak-fire}.gam-stat-value{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.5rem;font-weight:700;line-height:1}.gam-stat-label{text-transform:uppercase;letter-spacing:.5px;color:#1a315073;margin-top:.2rem;font-size:.65rem;font-weight:600}.gam-stat-sublabel{margin-top:.1rem;font-size:.75rem}.gam-stat-xp{color:#1a315059;margin-top:.25rem;font-size:.6rem}.gam-stat-badge{color:#4ecdc4;background:#4ecdc41f;border-radius:.5rem;margin-top:.25rem;padding:.1rem .4rem;font-size:.6rem;font-weight:600;display:inline-block}.gam-challenge-cta{background:var(--color-card);border:1px solid var(--color-border);border-radius:.875rem;padding:1rem 1.25rem}.gam-challenge-top{align-items:center;gap:.75rem;margin-bottom:.65rem;display:flex}.gam-challenge-icon-wrap{background:linear-gradient(135deg,#f973161a,#c5a2531a);border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;font-size:1.35rem;display:flex}.gam-challenge-info{flex:1}.gam-challenge-title{color:var(--color-foreground);font-size:.875rem;font-weight:600}.gam-challenge-meta{color:#1a315080;font-size:.75rem}.gam-challenge-time{color:#1a315059;flex-shrink:0;font-size:.7rem}.gam-challenge-segments{gap:4px;margin-bottom:.65rem;display:flex}.gam-challenge-seg{border-radius:2px;flex:1;height:4px}.seg-correct{background:#4ecdc4}.seg-wrong{background:var(--color-destructive)}.seg-pending{background:#1a315014}.gam-challenge-btn{color:#fff;cursor:pointer;width:100%;font-size:.8rem;font-weight:600;font-family:var(--font-sans);background:linear-gradient(135deg,#1a3150,#2a4a6b);border:none;border-radius:.625rem;padding:.6rem 1rem;transition:opacity .15s,transform .15s;display:block}.gam-challenge-btn:hover{opacity:.9;transform:translateY(-1px)}.gam-achievements{background:var(--color-card);border:1px solid var(--color-border);border-radius:.875rem;padding:1rem 1.25rem}.gam-achievements-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.gam-achievements-count{color:#1a315066;font-size:.7rem}.gam-tier-bar-container{margin-bottom:.75rem}.gam-tier-bar{background:#1a31500f;border-radius:4px;height:8px;display:flex;overflow:hidden}.gam-tier-bar-segment{height:100%;transition:width .5s ease-out}.gam-tier-legend{gap:.75rem;margin-bottom:.75rem;display:flex}.gam-tier-legend-item{color:#1a315066;align-items:center;gap:.25rem;font-size:.65rem;display:flex}.gam-tier-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.gam-next-achievement,.gam-latest-achievement{background:var(--color-background);border:1px solid #1a31500f;border-radius:.75rem;margin-bottom:.5rem;padding:.75rem}.gam-latest-achievement{margin-bottom:0}.gam-achievement-row{align-items:center;gap:.65rem;display:flex}.gam-achievement-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.gam-achievement-info{flex:1;min-width:0}.gam-achievement-name{color:var(--color-foreground);font-size:.8rem;font-weight:600}.gam-achievement-desc{color:#1a315080;font-size:.7rem}.gam-achievement-tier-badge{letter-spacing:.5px;border-radius:.625rem;flex-shrink:0;padding:.15rem .5rem;font-size:.55rem;font-weight:700}.gam-weekly{background:var(--color-card);border:1px solid var(--color-border);border-radius:.875rem;padding:1rem 1.25rem}.gam-weekly-header{justify-content:space-between;align-items:center;margin-bottom:.875rem;display:flex}.gam-weekly-count{color:#1a315059;font-size:.7rem}.gam-day-circles{justify-content:space-between;gap:.25rem;margin-bottom:1rem;display:flex}.gam-day-slot{text-align:center;flex:1}.gam-day{border-radius:50%;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;margin:0 auto .2rem;font-size:.65rem;font-weight:600;transition:background-color .2s,border-color .2s;display:flex}.gam-day-done{color:#fff;background:#4ecdc4}.gam-day-missed{color:#1a31504d;background:#1a31500f}.gam-day-today{color:#c5a253;background:0 0;border:2px dashed #c5a25366}.gam-day-indicator{color:#1a315059;font-size:.55rem}.gam-day-done+.gam-day-indicator{color:#4ecdc4}.gam-day-today~.gam-day-indicator{color:#c5a253}.gam-week-stats{gap:.5rem;display:flex}.gam-week-stat{text-align:center;background:#1a315008;border-radius:.625rem;flex:1;padding:.6rem}.gam-week-stat-value{color:var(--color-foreground);font-size:1.125rem;font-weight:700;line-height:1}.gam-week-stat-label{text-transform:uppercase;letter-spacing:.5px;color:#1a315066;margin-top:.15rem;font-size:.55rem}.challenge-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#1a315080;justify-content:center;align-items:center;animation:.2s ease-out modal-fade-in;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.challenge-modal{background:var(--color-card);border-radius:1rem;width:90%;max-width:480px;max-height:90vh;padding:1.5rem;animation:.2s ease-out modal-scale-in;overflow-y:auto;box-shadow:0 20px 60px #1a315033}.challenge-modal-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.challenge-modal-title{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.15rem;font-weight:600}.challenge-modal-close{color:#1a315066;cursor:pointer;background:#1a31500f;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.85rem;transition:background .15s;display:flex}.challenge-modal-close:hover{background:#1a31501f}.challenge-modal-progress{gap:4px;margin-bottom:1.25rem;display:flex}.challenge-modal-segment{border-radius:2px;flex:1;height:4px}.segment-correct{background:#4ecdc4}.segment-wrong{background:var(--color-destructive)}.segment-current{background:#c5a253;animation:1.5s infinite gentle-pulse}.segment-pending{background:#1a315014}.challenge-modal-counter{text-transform:uppercase;letter-spacing:.5px;color:#1a315066;margin-bottom:.75rem;font-size:.7rem;font-weight:600}.challenge-modal-question{font-family:var(--font-arabic);color:var(--color-foreground);margin-bottom:.35rem;font-size:1.25rem;line-height:1.8}.challenge-modal-question-en{color:#1a315080;margin-bottom:.25rem;font-size:.85rem}.challenge-modal-category{text-transform:uppercase;letter-spacing:.5px;color:var(--color-accent);margin-bottom:1rem;font-size:.6rem;font-weight:600}.challenge-modal-grid{grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem;display:grid}.challenge-modal-answer{background:var(--color-background);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:.625rem;align-items:center;gap:.5rem;padding:.75rem;transition:border-color .2s,background .2s;display:flex}.challenge-modal-answer:hover:not(:disabled){border-color:var(--color-accent);background:#c5a2530a}.challenge-modal-answer:disabled{cursor:default}.answer-letter{color:#1a315066;background:#1a315014;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;font-size:.6rem;font-weight:700;display:flex}.answer-text{flex:1}.answer-icon{flex-shrink:0;font-size:.85rem;font-weight:700}.answer-correct{border-color:var(--color-success)!important;background:#4a8c5c0f!important}.answer-correct .answer-letter{background:var(--color-success);color:#fff}.answer-correct .answer-icon{color:var(--color-success)}.answer-wrong{border-color:var(--color-destructive)!important;background:#c440400a!important}.answer-wrong .answer-letter{background:var(--color-destructive);color:#fff}.answer-wrong .answer-icon{color:var(--color-destructive)}.answer-disabled{opacity:.4}.challenge-modal-next{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;padding:.6rem 1rem;transition:opacity .15s,transform .15s;display:block}.challenge-modal-next:hover{opacity:.9;transform:translateY(-1px)}.challenge-modal-complete{text-align:center;padding:1.5rem 0}.challenge-modal-emoji{margin-bottom:.75rem;font-size:3rem}.challenge-modal-score{font-family:var(--font-serif);color:var(--color-foreground);font-size:1.25rem;font-weight:600}.challenge-modal-message{color:#1a315080;margin-top:.25rem;font-size:.85rem}.challenge-modal-xp{background:linear-gradient(135deg,var(--color-accent),#d4b56a);color:var(--color-primary);border-radius:1rem;margin-top:1rem;padding:.3rem 1rem;font-size:1rem;font-weight:700;animation:.6s cubic-bezier(.34,1.56,.64,1) bounce-in;display:inline-block}.challenge-modal-done-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:1.25rem;padding:.6rem 1rem;transition:opacity .15s;display:block}.challenge-modal-done-btn:hover{opacity:.9}.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)}}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(max-width:640px){.gam-stats-row{flex-direction:column}.challenge-modal{width:95%;padding:1.25rem}.challenge-modal-grid{grid-template-columns: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-related{border-top:1px solid #1a315014;margin-top:.5rem;padding-top:.5rem}.tool-card-related-label{text-transform:uppercase;letter-spacing:.05em;color:#1a315073;font-size:.7rem;font-weight:600}.tool-card-related-list{flex-wrap:wrap;gap:.35rem;margin-top:.25rem;display:flex}.tool-card-related-link{color:#1a315099;cursor:pointer;background:#1a31500a;border-radius:4px;padding:.15rem .4rem;font-size:.75rem;text-decoration:none;transition:background .15s,color .15s}.tool-card-related-link:hover{color:#c5a253;background:#c5a2531f}.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}
