.g-shell{font-family:var(--body),var(--arabic);max-width:68rem;margin-inline:auto;padding-inline:max(16px,var(--pad));padding-block:clamp(24px,6vw,64px) clamp(56px,12vw,120px)}.g-head{-webkit-border-after:1px solid var(--hair);border-block-end:1px solid var(--hair);-webkit-padding-after:clamp(18px,3vw,28px);padding-block-end:clamp(18px,3vw,28px);-webkit-margin-after:clamp(24px,5vw,44px);margin-block-end:clamp(24px,5vw,44px)}.g-back{display:inline-flex;align-items:center;gap:10px;min-height:48px;font-size:1rem;color:var(--text-3);text-decoration:none;transition:color var(--d-s) var(--e-out)}.g-back:hover{color:var(--accent)}.g-title{-webkit-margin-before:4px;margin-block-start:4px;color:var(--text)}.g-title__ar{font-family:var(--arabic);font-size:clamp(1.4rem,5vw,1.9rem);line-height:2;letter-spacing:0;text-align:left;color:var(--accent);-webkit-margin-before:6px;margin-block-start:6px}.g-level{-webkit-margin-before:16px;margin-block-start:16px;color:var(--text-3)}.g-prog{-webkit-margin-before:12px;margin-block-start:12px;block-size:3px;background:var(--hair);border-radius:2px;overflow:hidden}.g-prog__bar{display:block;block-size:100%;background:var(--accent);transition:width var(--d-m) var(--e-out)}.g-note{-webkit-margin-before:18px;margin-block-start:18px;padding:14px 16px;-webkit-border-start:2px solid var(--gold-500);border-inline-start:2px solid var(--gold-500);background:var(--raised);color:var(--text-2);font-size:1rem;line-height:1.55;max-width:62ch}.g-note strong{color:var(--text);font-weight:500}.g-actions{display:flex;flex-wrap:wrap;gap:12px;-webkit-margin-before:clamp(20px,4vw,32px);margin-block-start:clamp(20px,4vw,32px)}.g-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;min-width:48px;padding:12px 22px;border:1px solid var(--text);background:transparent;color:var(--text);font:inherit;font-size:1rem;line-height:1.3;text-align:center;text-decoration:none;cursor:pointer;transition:background-color var(--d-s) var(--e-out),color var(--d-s) var(--e-out),border-color var(--d-s) var(--e-out)}.g-btn:hover{background:var(--text);color:var(--bg)}.g-btn--go{border-color:var(--accent);background:var(--accent);color:var(--stone-50)}.g-btn--go:hover{background:var(--fill);border-color:var(--fill);color:var(--stone-50)}.g-btn--quiet{border-color:var(--line);color:var(--text-2)}.g-btn--quiet:hover{background:var(--raised);color:var(--text);border-color:var(--text-3)}.g-msg{-webkit-margin-before:18px;margin-block-start:18px;min-height:1.6em;font-size:1rem;line-height:1.55;color:var(--text-2)}.g-msg--good{color:var(--accent)}.g-panel{background:var(--raised);border:1px solid var(--hair);padding:clamp(18px,4vw,30px)}.g-fade{animation:gFade var(--d-m) var(--e-out) both}@keyframes gFade{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}.g-intro{max-width:52ch;color:var(--text-2);font-size:1.05rem;line-height:1.55}.g-cards{list-style:none;margin:clamp(28px,6vw,48px) 0 0;padding:0;display:grid;grid-gap:1px;gap:1px;background:var(--hair);border-block:1px solid var(--hair)}@media (min-width:800px){.g-cards{grid-template-columns:1fr 1fr}}.g-card{display:block;background:var(--bg);padding:clamp(22px,4vw,34px);min-height:48px;text-decoration:none;color:inherit;transition:background-color var(--d-s) var(--e-out)}.g-card:hover{background:var(--raised)}.g-card:hover .g-card__t{color:var(--accent)}.g-card__n{font-family:var(--arabic);font-size:1.5rem;line-height:2;letter-spacing:0;text-align:left;color:var(--text-3)}.g-card__t{font-family:var(--display);font-size:clamp(1.35rem,3.4vw,1.75rem);line-height:1.1;-webkit-margin-before:6px;margin-block-start:6px;transition:color var(--d-s) var(--e-out)}.g-card__d{-webkit-margin-before:10px;margin-block-start:10px;color:var(--text-2);font-size:1rem;line-height:1.55;max-width:44ch}.g-card__m{-webkit-margin-before:14px;margin-block-start:14px;font-size:.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-700)}.g-ask,.g-ask__ar{text-align:center}.g-ask__ar{font-family:var(--arabic);font-size:clamp(2.2rem,11vw,4rem);line-height:2;letter-spacing:0;color:var(--text);padding-block:clamp(10px,3vw,22px)}.g-opts{list-style:none;margin:clamp(18px,4vw,28px) 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}@media (min-width:720px){.g-opts{grid-template-columns:1fr 1fr}}.g-opt{display:flex;align-items:center;width:100%;min-height:56px;padding:14px 18px;border:1px solid var(--line);background:var(--raised);color:var(--text);font:inherit;font-size:1rem;line-height:1.45;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),background-color var(--d-s) var(--e-out),opacity var(--d-s) var(--e-out)}.g-opt.is-right,.g-opt:hover:not(:disabled){border-color:var(--accent)}.g-opt.is-right{background:color-mix(in srgb,var(--accent) 12%,var(--raised))}.g-opt.is-tired{opacity:.45;cursor:default}.g-opt:disabled{cursor:default}.g-reveal{-webkit-margin-before:clamp(18px,4vw,26px);margin-block-start:clamp(18px,4vw,26px);text-align:center}.g-reveal__tr{font-family:var(--display);font-size:clamp(1.3rem,4vw,1.7rem);line-height:1.2;color:var(--accent)}.g-reveal__en{-webkit-margin-before:6px;margin-block-start:6px;color:var(--text-2);font-size:1rem;line-height:1.5}.g-lamps{list-style:none;margin:clamp(30px,6vw,52px) 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(48px,1fr));grid-gap:6px;gap:6px;-webkit-border-before:1px solid var(--hair);border-block-start:1px solid var(--hair);-webkit-padding-before:clamp(20px,4vw,30px);padding-block-start:clamp(20px,4vw,30px)}.g-lamp{position:relative;aspect-ratio:1;min-height:48px;display:flex;align-items:center;justify-content:center;border:1px solid var(--hair);background:transparent;color:var(--text-3);font:inherit;font-size:1rem;line-height:1;cursor:default;transition:background-color var(--d-m) var(--e-out),border-color var(--d-m) var(--e-out),color var(--d-m) var(--e-out),box-shadow var(--d-m) var(--e-out)}.g-lamp.is-lit{border-color:var(--gold-500);background:color-mix(in srgb,var(--gold-500) 18%,transparent);color:var(--gold-700);box-shadow:0 0 0 1px color-mix(in srgb,var(--gold-500) 30%,transparent);cursor:pointer}.g-lamp.is-now{border-color:var(--accent);color:var(--accent)}.g-lampname{-webkit-margin-before:16px;margin-block-start:16px;min-height:3em;text-align:center}.g-lampname__ar{font-family:var(--arabic);font-size:clamp(1.4rem,5vw,1.8rem);line-height:2;letter-spacing:0;text-align:center;color:var(--text)}.g-lampname__en{color:var(--text-2);font-size:1rem;line-height:1.5}.g-levels{list-style:none;margin:0 0 clamp(24px,5vw,36px);padding:0;display:grid;grid-gap:10px;gap:10px}@media (min-width:720px){.g-levels{grid-template-columns:repeat(2,1fr)}}.g-levelbtn{display:flex;flex-direction:column;gap:6px;width:100%;min-height:48px;padding:16px 18px;border:1px solid var(--line);background:var(--raised);color:var(--text);font:inherit;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),background-color var(--d-s) var(--e-out)}.g-levelbtn.is-on,.g-levelbtn:hover{border-color:var(--accent)}.g-levelbtn.is-on{background:color-mix(in srgb,var(--accent) 10%,var(--raised))}.g-levelbtn__t{font-family:var(--display);font-size:1.25rem;line-height:1.15}.g-levelbtn__ar{font-family:var(--arabic);font-size:1.15rem;line-height:2;letter-spacing:0;text-align:left;color:var(--accent)}.g-levelbtn__d{font-size:1rem;line-height:1.5;color:var(--text-2)}.g-board{display:grid;grid-gap:clamp(22px,5vw,36px);gap:clamp(22px,5vw,36px)}@media (min-width:880px){.g-board{grid-template-columns:1fr 1fr;align-items:start}}.g-col__h{font-size:.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);-webkit-margin-after:12px;margin-block-end:12px}.g-slots,.g-tray{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px}.g-slot{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:12px 14px;border:1px dashed var(--line);background:transparent;color:var(--text-3);font:inherit;font-size:1rem;line-height:1.45;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),background-color var(--d-s) var(--e-out)}.g-slot.is-open:hover,.g-slot.is-target{border-color:var(--accent)}.g-slot.is-full,.g-slot.is-target{border-style:solid}.g-slot.is-full{border-color:var(--line);background:var(--raised);color:var(--text)}.g-slot.is-locked{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--raised));color:var(--text);cursor:default}.g-slot__n{flex:none;inline-size:28px;font-family:var(--arabic);font-size:1.1rem;line-height:2;letter-spacing:0;text-align:center;color:var(--text-3)}.g-chip{display:flex;align-items:center;width:100%;min-height:56px;padding:12px 16px;border:1px solid var(--line);background:var(--raised);color:var(--text);font:inherit;font-size:1rem;line-height:1.45;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),translate var(--d-s) var(--e-out)}.g-chip.is-sel,.g-chip:hover{border-color:var(--accent)}.g-chip.is-sel{background:color-mix(in srgb,var(--accent) 12%,var(--raised))}.g-chip.is-back{animation:gBack var(--d-m) var(--e-out) both}@keyframes gBack{0%{opacity:0;translate:0 -8px}to{opacity:1;translate:0 0}}.g-empty{color:var(--text-3);font-size:1rem;line-height:1.5;padding-block:12px}.g-stage{max-width:62ch}.g-stage__meta{font-size:.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.g-stage__t{font-family:var(--display);font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.05;margin-block:10px 0}.g-story{-webkit-margin-before:18px;margin-block-start:18px;font-size:1.05rem;line-height:1.65;color:var(--text-2)}.g-q{-webkit-margin-before:clamp(24px,5vw,36px);margin-block-start:clamp(24px,5vw,36px);-webkit-padding-before:clamp(20px,4vw,28px);padding-block-start:clamp(20px,4vw,28px);-webkit-border-before:1px solid var(--hair);border-block-start:1px solid var(--hair);font-family:var(--display);font-size:clamp(1.25rem,3.6vw,1.6rem);line-height:1.25;color:var(--text)}.g-choices{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px}.g-choice{width:100%;min-height:56px;padding:16px 18px;border:1px solid var(--line);background:var(--raised);color:var(--text);font:inherit;font-size:1rem;line-height:1.5;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),opacity var(--d-s) var(--e-out)}.g-choice.is-picked,.g-choice:hover:not(:disabled){border-color:var(--accent)}.g-choice.is-picked{background:color-mix(in srgb,var(--accent) 10%,var(--raised))}.g-choice:disabled{cursor:default}.g-choice.is-dim{opacity:.4}.g-outcome{-webkit-margin-before:clamp(20px,4vw,28px);margin-block-start:clamp(20px,4vw,28px);padding:clamp(16px,3vw,24px);background:var(--raised);-webkit-border-start:2px solid var(--accent);border-inline-start:2px solid var(--accent);font-size:1.05rem;line-height:1.6;color:var(--text-2)}.g-lesson{-webkit-margin-before:16px;margin-block-start:16px;font-family:var(--display);font-size:clamp(1.15rem,3vw,1.4rem);line-height:1.3;color:var(--text)}.g-lesson span{display:block;font-family:var(--body);font-size:.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold-700);-webkit-margin-after:8px;margin-block-end:8px}.g-dots{display:flex;flex-wrap:wrap;gap:6px;-webkit-margin-before:clamp(30px,6vw,48px);margin-block-start:clamp(30px,6vw,48px)}.g-dot{inline-size:10px;block-size:10px;border-radius:50%;background:var(--hair)}.g-dot.is-done{background:var(--accent)}.g-dot.is-now{background:var(--gold-500)}.g-surahs{list-style:none;margin:0;padding:0;display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr}@media (min-width:620px){.g-surahs{grid-template-columns:1fr 1fr}}@media (min-width:980px){.g-surahs{grid-template-columns:1fr 1fr 1fr}}.g-surah{display:flex;align-items:center;gap:14px;width:100%;min-height:64px;padding:12px 16px;border:1px solid var(--hair);background:var(--raised);color:var(--text);font:inherit;text-align:start;cursor:pointer;transition:border-color var(--d-s) var(--e-out),background-color var(--d-s) var(--e-out)}.g-surah:hover{border-color:var(--accent)}.g-surah__n{flex:none;min-inline-size:2.4ch;font-family:var(--arabic);font-size:1.1rem;line-height:2;letter-spacing:0;color:var(--text-3)}.g-surah__en,.g-surah__meaning{font-size:1rem;line-height:1.35}.g-surah__meaning{color:var(--text-3)}.g-surah__ar{-webkit-margin-start:auto;margin-inline-start:auto;font-family:var(--arabic);font-size:1.15rem;line-height:2;letter-spacing:0;color:var(--accent);text-align:end}.g-bismillah{text-align:center;-webkit-padding-after:clamp(18px,4vw,28px);padding-block-end:clamp(18px,4vw,28px);-webkit-margin-after:clamp(18px,4vw,28px);margin-block-end:clamp(18px,4vw,28px);-webkit-border-after:1px solid var(--hair);border-block-end:1px solid var(--hair)}.g-bismillah__ar{font-family:var(--arabic);font-size:clamp(1.5rem,6vw,2.1rem);line-height:2.1;letter-spacing:0;text-align:center;color:var(--accent)}.g-bismillah__en{-webkit-margin-before:6px;margin-block-start:6px;color:var(--text-3);font-size:1rem;line-height:1.5}.g-ayah{text-align:center}.g-ayah__i{font-size:.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.g-ayah__ar{font-family:var(--arabic);font-size:clamp(1.7rem,7.5vw,2.8rem);line-height:2.2;letter-spacing:0;text-align:center;color:var(--text);padding-block:clamp(14px,4vw,26px);max-width:24ch;margin-inline:auto}.g-ayah__en{line-height:1.6;max-width:46ch;margin-inline:auto}.g-ayah__en,.g-ayah__ur{font-size:1.05rem;color:var(--text-2)}.g-ayah__ur{-webkit-margin-before:12px;margin-block-start:12px;text-align:center;font-family:"Noto Nastaliq Urdu",var(--arabic),serif;line-height:2.2;letter-spacing:0;max-width:44ch;margin-inline:auto}.g-line{min-height:92px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:flex-start;direction:rtl;padding:14px;border:1px dashed var(--line);background:var(--raised)}.g-line.is-done{border-style:solid;border-color:var(--accent)}.g-words{-webkit-margin-before:14px;margin-block-start:14px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;direction:rtl;padding:14px 0}.g-word{min-height:52px;padding:8px 16px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-family:var(--arabic);font-size:1.35rem;line-height:2;letter-spacing:0;cursor:pointer;transition:border-color var(--d-s) var(--e-out),background-color var(--d-s) var(--e-out)}.g-word.is-placed,.g-word:hover{border-color:var(--accent)}.g-word.is-placed{background:color-mix(in srgb,var(--accent) 10%,var(--bg))}.g-tabs{display:flex;gap:8px;flex-wrap:wrap;-webkit-margin-after:clamp(20px,4vw,30px);margin-block-end:clamp(20px,4vw,30px)}@media (prefers-reduced-motion:reduce){.g-chip.is-back,.g-fade{animation:none!important}.g-back,.g-card,.g-chip,.g-choice,.g-lamp,.g-levelbtn,.g-opt,.g-prog__bar,.g-slot,.g-surah,.g-word{transition:none!important}}.g-lamp{border-radius:2px}.g-lamp:before{content:"";position:absolute;inset-block-start:22%;inline-size:26%;aspect-ratio:.62;border-radius:50% 50% 46% 46%/62% 62% 38% 38%;background:radial-gradient(ellipse at 50% 68%,color-mix(in srgb,var(--gold-500) 92%,#fff) 0,var(--gold-500) 46%,color-mix(in srgb,var(--gold-700) 80%,transparent) 78%,transparent 100%);opacity:0;scale:.4;pointer-events:none}.g-lamp.is-lit:before{opacity:1;scale:1}.g-lamp.is-lit{color:color-mix(in srgb,var(--gold-700) 70%,transparent)}@media (prefers-reduced-motion:no-preference){.g-lamp:before{transition:opacity .5s var(--e-out),scale .5s var(--e-out)}.g-lamp.is-just-lit{animation:lampIgnite .72s var(--e-out) both}.g-lamp.is-just-lit:before{animation:flameUp .72s var(--e-out) both}@keyframes lampIgnite{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--gold-500) 0%,transparent)}38%{box-shadow:0 0 22px 5px color-mix(in srgb,var(--gold-500) 55%,transparent)}to{box-shadow:0 0 0 1px color-mix(in srgb,var(--gold-500) 30%,transparent)}}@keyframes flameUp{0%{opacity:0;scale:.2}40%{opacity:1;scale:1.28}to{opacity:1;scale:1}}.g-lamps--arrive .g-lamp.is-lit:before{animation:flameUp .5s var(--e-out) both}.g-lamps--arrive .g-lamp.is-lit:nth-child(n){animation-delay:0s}.g-lamps--arrive .g-lamp.is-lit:before{animation-delay:calc(var(--lamp-i, 0) * 26ms)}.g-lamp.is-lit:not(.is-just-lit):before{animation:flameBreathe 4.2s var(--e-inout) infinite}@keyframes flameBreathe{0%,to{opacity:.92;scale:1}50%{opacity:1;scale:1.06}}}.g-cards>li,.g-surahs>li{display:flex}.g-cards>li>a,.g-cards>li>button,.g-surahs>li>button{inline-size:100%;block-size:100%}