#themeToggle{display:grid;place-items:center;color:#967b48;width:30px;height:30px;padding:0}#themeToggle svg{width:20px;height:20px}#skyCanvas{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s var(--reveal-delay,0ms),transform .75s var(--reveal-delay,0ms);will-change:auto}.reveal.is-revealed{opacity:1;transform:none}.path-card,.visual-card,.story-thumb{transition:transform .45s ease,box-shadow .45s ease}.path-card:hover,.visual-card:hover{box-shadow:0 20px 50px #163b3420}.path-card:after{content:'';position:absolute;inset:0;border:1px solid #f8d99c35;border-radius:inherit;pointer-events:none}.cinematic-copy .gold-button{box-shadow:0 0 45px #d7b97420}.constellation-node:hover span{box-shadow:0 0 50px #b6a1673d}.constellation-line{animation:constellationBreathe 6s ease-in-out infinite}@keyframes constellationBreathe{50%{border-color:#d3bb8177;box-shadow:0 0 20px #9d9c6120}}#journeyPortal{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at center,#234a47,#081c28 60%);display:grid;place-items:center;color:#f5e8c8;animation:portalAppear .35s ease}.portal-copy{position:relative;text-align:center}.portal-copy small{font-size:10px;letter-spacing:5px;color:#b5a47a}.portal-copy h2{font-size:clamp(35px,5vw,62px);line-height:1.35;margin-block:25px}.portal-copy>span{font-size:10px;letter-spacing:1px;color:#adbbb0}.portal-rings{position:absolute;width:min(70vw,650px);height:min(70vw,650px)}.portal-rings i{position:absolute;inset:0;border:1px solid #b9a87933;border-radius:50%;animation:portalRing 1.8s ease-out forwards}.portal-rings i:nth-child(2){inset:12%;animation-delay:.15s}.portal-rings i:nth-child(3){inset:25%;animation-delay:.3s}#portalSkip{position:absolute;bottom:12%;font-size:12px;color:#c5cbb5;padding:12px 20px;border:1px solid #cfbd8b40;border-radius:4px}@keyframes portalRing{from{transform:scale(.6);opacity:0}to{transform:scale(1.5);opacity:.6}}@keyframes portalAppear{from{opacity:0}to{opacity:1}}::view-transition-old(root){animation:leavePage .24s ease both}::view-transition-new(root){animation:enterPage .5s ease both}@keyframes leavePage{to{opacity:0;transform:translateY(-8px)}}@keyframes enterPage{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.family-explorer{display:grid;grid-template-columns:1.15fr 1fr;gap:35px;align-items:start}.family-map{background:radial-gradient(ellipse at 60% 40%,#1e5548,#102e33 75%);border-radius:12px;padding:24px;color:#e7d6a9;overflow:hidden;box-shadow:0 20px 40px #0e2c3110}.family-svg-wrap{overflow:auto;max-height:650px;scrollbar-width:thin;scrollbar-color:#9a976c #143b3c}.family-map svg{display:block;max-width:100%;width:100%;height:auto}.map-tools{display:flex;gap:10px;align-items:center}.map-tools>span{font-size:8px;letter-spacing:1.6px;margin-right:auto}.map-tools button{border:1px solid #b9bc8c40;border-radius:50%;width:27px;height:27px;line-height:1;padding:0;color:#ead5a1}.map-caption{font-size:9px;color:#9bb4a9;display:block;margin-top:20px;line-height:1.8}.family-branch{fill:none;stroke:#b5ab7555;stroke-width:1.5;stroke-dasharray:700;stroke-dashoffset:700;animation:drawBranch 1.7s ease forwards}.node-circle{fill:#214c44;stroke:#a8986e;stroke-width:1}.family-node{cursor:pointer;outline:none}.family-node:hover .node-circle,.family-node:focus .node-circle,.family-node.selected .node-circle{fill:#41624b;stroke:#efd69b;stroke-width:2}.node-arabic{font:24px Amiri;fill:#e4d4ad}.node-label{font:11px 'DM Sans';fill:#c8d2bd}.family-node.selected .node-label{fill:#f8e1a6;font-weight:700}.family-arabic{font:65px Amiri;color:#9d874b;margin:20px 0 0}#familyDetails{padding:30px 5px}#familyDetails>p{color:var(--muted);font-size:14px}.family-related{margin-top:35px;border-top:1px solid var(--line);padding-top:20px}.family-related>small{font-size:9px;letter-spacing:1.4px;color:#9f874d}.family-related>a{display:block;font-size:12px;margin-top:14px}.family-related .source{font-size:9px;margin-top:15px}@keyframes drawBranch{to{stroke-dashoffset:0}}.journey-scene-banner{display:flex;align-items:center;gap:28px;position:relative;background:linear-gradient(120deg,#0e2d35,#224b41);color:#e8dbb7;border-radius:10px;margin-bottom:35px;padding:28px 35px;overflow:hidden}.journey-scene-banner h3{font-size:27px;margin:5px 0 7px}.journey-scene-banner small{font-size:8px;letter-spacing:2px;color:#b8ad87}.journey-scene-banner p{font-size:10px;color:#a9c0b1;margin:0}.journey-scene-banner .outline{margin-left:auto;border-color:#93a58655;color:#cfdfcf;font-size:10px;white-space:nowrap}.scene-orbit{width:65px;height:65px;position:relative;display:grid;place-items:center;flex-shrink:0}.scene-orbit i{position:absolute;inset:0;border:1px solid #bda97d66;border-radius:50%;animation:slowSpin 15s linear infinite}.scene-orbit i:nth-child(2){inset:8px;border-radius:3px;animation-direction:reverse}.scene-orbit span{font-size:32px;color:#c7b383}.journey-overview{display:flex;flex-direction:column;gap:12px}.journey-overview>a{display:flex;gap:15px;padding:15px;border:1px solid var(--line);border-radius:6px;align-items:center;background:#fff7}.journey-overview>a>span:first-child{font:25px 'Playfair Display';color:#a18b52;min-width:35px}.journey-overview b{display:block;font-size:12px}.journey-overview small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.journey-overview>a>span:last-child{margin-left:auto}@keyframes slowSpin{to{transform:rotate(360deg)}}.reading-focus .reader{max-width:1000px}.reading-focus header,.reading-focus footer,.reading-focus .mobile-nav{display:none}.reading-focus .page-hero{max-width:1000px}.reading-focus main{background:#f5f3e8;min-height:100vh}.reading-focus .reader-toolbar{box-shadow:0 3px 15px #1a342010}.night-theme{--cream:#102b2b;--ink:#dce4cf;--green:#466b55;--muted:#a0b8a5;--line:#395448;background:#102b2b;color:var(--ink)}.night-theme header,.night-theme footer,.night-theme .mobile-nav{background:#112e2e}.night-theme .discovery-strip{background:#153c37;border-color:var(--line)}.night-theme .discovery-strip b,.night-theme .discovery-strip span,.night-theme .discovery-strip small{color:#c9cbaa}.night-theme .wide-light{background:#173831}.night-theme .visual-card,.night-theme .story-thumb,.night-theme .lesson,.night-theme .surah-card,.night-theme .chapter-panel,.night-theme dialog,.night-theme .path-choice{background:#1b3a34;border-color:#45604b;color:#dce4cf}.night-theme .card-body p,.night-theme .story-thumb p,.night-theme .lesson p,.night-theme .surah-card small{color:#a8bdad}.night-theme .reflection-wall,.night-theme .reader-toolbar,.night-theme .activity-banner,.night-theme .practice-controls,.night-theme .notice{background:#21463a}.night-theme .reflection-prompts a,.night-theme .input,.night-theme .match-item,.night-theme .quiz-options button{background:#17372f;color:#dce4cf;border-color:#45604b}.night-theme .source{background:#274937;color:#d1ddbd;border-color:#5b7150}.night-theme .source.hadith{background:#494630;color:#e2d4ad}.night-theme .outline{color:#d8e1c9;border-color:#658064}.night-theme .source:hover,.night-theme .outline:hover{background:#3c5942}.night-theme .icon-art,.night-theme .number,.night-theme .practice-figure{background:#2d513e;color:#d4d9b5}.night-theme .practice-figure svg{stroke:#bfd4ad}.night-theme .verse .arabic,.night-theme .local-verse .arabic,.night-theme .prayer-phrase{color:#d9dfbb}.night-theme .verse.playing,.night-theme .chip,.night-theme .family a{background:#294d3c}.night-theme .chip.active{background:#557251}.night-theme .badge-grid .learning-badge{background:#234135}.night-theme .learning-badge.unlocked{background:#365441}.night-theme .journey-overview>a{background:#1f4337}.night-theme .reading-focus main{background:#17332e}.night-theme .matching-grid .matched{background:#4c6344}.night-theme .timeline-nav button.active{background:#2a4d3c}.night-theme .kids .lesson{background:#274737}.night-theme .brand small{color:#a5b59d}.night-theme .eyebrow{color:#c5ab75}.night-theme .family .full{background:#2d5140}@media(max-width:800px){.family-explorer{grid-template-columns:1fr 1fr;gap:25px}.journey-scene-banner{gap:20px;padding:25px}.journey-scene-banner .outline{padding:10px}.family-map{padding:20px}}@media(max-width:560px){.family-explorer{grid-template-columns:1fr;gap:0}.family-svg-wrap{max-height:560px}.family-map{padding:22px}.family-arabic{font-size:54px}#familyDetails{padding-top:30px}.journey-scene-banner{flex-wrap:wrap;padding:24px;gap:17px}.journey-scene-banner h3{font-size:23px}.journey-scene-banner .outline{margin-left:82px;font-size:9px}.scene-orbit{width:55px;height:55px}.portal-copy h2{font-size:35px}.portal-copy>span{font-size:9px}.portal-rings{width:90vw;height:90vw}.reveal{transform:translateY(16px)}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.family-branch{stroke-dashoffset:0}.scene-orbit i,.constellation-line{animation:none}::view-transition-old(root),::view-transition-new(root){animation:none}}
.reduce .reveal{opacity:1;transform:none}.reduce .family-branch{stroke-dashoffset:0}.reduce .constellation-line,.reduce .scene-orbit i{animation:none}
@media(min-width:561px) and (max-width:950px){header nav{display:none}body{padding-bottom:65px}.mobile-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:var(--cream);border-top:1px solid var(--line);z-index:10;padding:10px 15px}.mobile-nav a{text-align:center;font-size:20px;line-height:1.1;min-width:60px}.mobile-nav small{display:block;font-size:9px;margin-top:5px}#toast{bottom:85px}}
