:root{
--bg:#f6f1e7;
--bg-elevated:#fffdf8;
--text:#1c2a22;
--text-muted:#5c6b62;
--accent:#0d4f3c;
--accent-light:#1a6b52;
--accent-fg:#f7f3eb;
--accent-soft:#e6f2ec;
--border:#e0d5c4;
--card-bg:rgba(255,253,248,0.96);
--banner:#0d4f3c;
--gold:#b8922a;
--gold-soft:#f5edd6;
--sky:#2a5f7a;
--sky-soft:#e8f1f6;
--accent:#0f4c3a;
--accent-soft:#efeaf5;
--grave:#2c4a3a;
--shadow:0 4px 18px rgba(13,50,40,0.08);
--radius:16px;
--glow:none;
color-scheme:light
}*{box-sizing:border-box;margin:0;padding:0}body{font-family:'Inter',system-ui,sans-serif;color:var(--text);line-height:1.65;min-height:100vh;background:
      radial-gradient(ellipse 120% 80% at 50% -20%, rgba(31,166,122,0.22), transparent 55%),
      radial-gradient(ellipse 80% 50% at 100% 50%, rgba(212,180,90,0.08), transparent 45%),
      radial-gradient(ellipse 60% 40% at 0% 80%, rgba(61,138,181,0.1), transparent 40%),
      linear-gradient(180deg, #f7f3eb 0%, #eef6f1 50%, #e8e2d4 100%);background-color:var(--bg)}body::before{content:'';position:fixed;inset:0;background:rgba(248,245,238,0.52);z-index:-1;pointer-events:none}.arabic,.arabic-calligraphy,.rabbana-arabic{font-family:'Scheherazade New','Amiri','Noto Naskh Arabic','Lateef','Traditional Arabic',serif !important;direction:rtl;font-weight:600;letter-spacing:0.02em;line-height:2.15;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-shadow:0 1px 0 rgba(255,255,255,0.6),0 1.5px 2px rgba(0,0,0,0.12)}.arabic-calligraphy{font-size:1.75rem;font-weight:600;color:#1a2a1a}.banner{position:relative;min-height:0;overflow:hidden;border-bottom:3px solid var(--gold);background:linear-gradient(135deg,#0a3d30 0%,#0d4f3c 45%,#1a6b52 100%)}.banner-media{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:linear-gradient(135deg,rgba(15,76,58,0.35),rgba(10,40,30,0.55)),radial-gradient(ellipse at 50% 40%,#2a6b4f 0%,#0f4c3a 45%,#0a2e22 100%)}.banner-still-fallback{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0.85;z-index:0}.banner img,.banner-media img{width:100%;height:100%;object-fit:cover;opacity:0.85;position:absolute;inset:0;z-index:1;transition:opacity 0.6s ease}.banner-live{position:absolute;inset:0;width:100%;height:100%;border:0;opacity:0;pointer-events:none;z-index:3}.banner-media.live-active .banner-live{opacity:1;z-index:4}.banner-media.live-active img,.banner-media.live-active .banner-still-fallback{opacity:0 !important;z-index:0}.banner:has(.live-active) .banner-overlay{background:linear-gradient(to bottom,rgba(8,28,22,0.15),rgba(8,28,22,0.28))}.banner-media.live-fallback .banner-live{opacity:0 !important;pointer-events:none;z-index:0}.banner-media.live-fallback img{opacity:0.85 !important;z-index:1}.banner-live-status{font-size:0.72rem;opacity:0.95;margin-left:0.35rem}.banner-overlay{position:relative;z-index:1;background:linear-gradient(to bottom,rgba(15,76,58,0.2),rgba(15,76,58,0.35));display:flex;flex-direction:row;justify-content:center;align-items:stretch;text-align:center;color:white;padding:0.35rem 0.5rem 0.4rem;min-height:0;gap:0.25rem}.banner-side{flex:0 0 auto;width:138px;display:flex;flex-direction:column;justify-content:center}.banner-side.left{order:1}.banner-side.right{order:3}.banner-center{order:2;flex:1 1 auto;min-width:0;max-width:480px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 0.25rem}.banner .bismillah{font-family:'Scheherazade New','Amiri',serif;direction:rtl;font-size:1rem;margin-bottom:0.08rem;opacity:0.95;letter-spacing:0.3px;text-shadow:0 1px 6px rgba(0,0,0,0.35)}.banner h1{font-family:'Cormorant Garamond',serif;font-size:1.55rem;font-weight:700;letter-spacing:0.8px;margin-bottom:0.02rem;text-shadow:0 2px 8px rgba(0,0,0,0.4);display:flex;align-items:center;justify-content:center;gap:0.3rem}.banner h1 .title-icon{font-size:0.95rem;line-height:1;filter:drop-shadow(0 1px 3px rgba(0,0,0,0.3));opacity:0.92}.banner .subtitle{font-size:0.76rem;opacity:0.95;margin-bottom:0.08rem}.banner .place-name{font-size:0.7rem;opacity:0.9;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0.25rem}.banner .temp-live{display:inline-flex;align-items:center;gap:0.2rem;background:rgba(255,255,255,0.22);padding:0.1rem 0.45rem;border-radius:12px;font-size:0.74rem;font-weight:500}.hijri-cal-section,.salah-times-section{background:rgba(0,0,0,0.30);border-radius:10px;padding:0.3rem 0.4rem 0.35rem;width:100%;text-align:center;height:100%;display:flex;flex-direction:column;justify-content:center}.hijri-cal-section .cal-title,.salah-times-section .salah-title{font-size:0.68rem;font-weight:600;opacity:0.95;margin-bottom:0.15rem;letter-spacing:0.02em}.hijri-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;font-size:0.58rem;line-height:1.15}.hijri-cal-grid .dow{opacity:0.75;font-weight:600;padding:0.05rem 0}.hijri-cal-grid .day{padding:0.1rem 0;border-radius:3px}.hijri-cal-grid .day.today{background:rgba(255,255,255,0.35);font-weight:700;box-shadow:0 0 0 1px rgba(255,255,255,0.4)}.hijri-cal-grid .day.empty{opacity:0.25}.hijri-cal-meta{font-size:0.62rem;margin-top:0.12rem;opacity:0.9}.hijri-local-time{font-size:0.78rem;font-weight:700;margin-top:0.18rem;margin-bottom:0.02rem;letter-spacing:0.02em;font-variant-numeric:tabular-nums}.hijri-local-loc{font-size:0.58rem;opacity:0.85;margin-top:0.02rem;margin-bottom:0;line-height:1.2;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.salah-times-section .hijri-local-time{margin-top:0.2rem;padding-top:0.14rem;border-top:1px solid rgba(255,255,255,0.15)}.salah-times-section .hijri-local-loc{margin-bottom:0;padding-bottom:0;border-bottom:none}.salah-times-list{list-style:none;margin:0;padding:0;text-align:left;font-size:0.64rem;line-height:1.3}.salah-times-list li{display:flex;justify-content:space-between;gap:0.3rem;padding:0.1rem 0;border-bottom:1px solid rgba(255,255,255,0.12)}.salah-times-list li:last-child{border-bottom:none}.salah-times-list .salah-name{font-weight:500;flex:1;min-width:0}.salah-times-list .salah-time{background:rgba(255,255,255,0.22);padding:0.04rem 0.28rem;border-radius:7px;font-weight:600;white-space:nowrap;font-size:0.6rem;font-variant-numeric:tabular-nums}.salah-times-list li.next-prayer .salah-name,.salah-times-list li.next-prayer .salah-time{font-weight:700}.salah-times-list li.next-prayer .salah-time{background:rgba(255,255,255,0.40);box-shadow:0 0 0 1px rgba(255,255,255,0.35)}.salah-times-list li.passed{opacity:0.55}.salah-meta{font-size:0.58rem;margin-top:0.12rem;opacity:0.88;line-height:1.25}.banner-event-strip{display:flex;width:100%;max-width:520px;margin:0.15rem auto 0;background:rgba(0,0,0,0.28);border-radius:10px;padding:0.22rem 0.55rem;font-size:0.68rem;font-weight:500;align-items:center;justify-content:center;gap:0.45rem;flex-wrap:wrap;line-height:1.3}.banner-event-strip .ms-sep{opacity:0.45}.banner-event-strip .ms-days{background:rgba(255,255,255,0.22);padding:0.05rem 0.35rem;border-radius:8px;font-weight:600;font-size:0.64rem}.banner-mobile-strip{display:none;width:100%;max-width:520px;margin:0.12rem auto 0;background:rgba(0,0,0,0.28);border-radius:10px;padding:0.22rem 0.55rem;font-size:0.68rem;font-weight:500;align-items:center;justify-content:center;gap:0.45rem;flex-wrap:wrap;line-height:1.3}.banner-mobile-strip .ms-sep{opacity:0.45}.banner-mobile-strip .ms-days{background:rgba(255,255,255,0.22);padding:0.05rem 0.35rem;border-radius:8px;font-weight:600;font-size:0.64rem}.banner .rabbana-box{margin-top:0.18rem;max-width:460px;background:rgba(0,0,0,0.28);border-radius:10px;padding:0.25rem 0.65rem}.rabbana-arabic{font-size:0.92rem;direction:rtl;line-height:1.45;margin-bottom:0.05rem}.banner .rabbana-english{font-size:0.7rem;opacity:0.95}.banner .rabbana-ref{font-size:0.6rem;opacity:0.8;margin-top:0.03rem}.rabbana-nav{display:flex;align-items:center;justify-content:center;gap:0.45rem;margin-bottom:0.2rem}.rabbana-cycle{background:rgba(255,255,255,0.18) !important;color:#fff !important;border:1px solid rgba(255,255,255,0.35) !important;width:1.7rem;height:1.7rem;padding:0 !important;border-radius:999px !important;font-size:1.1rem;line-height:1}.rabbana-count{font-size:0.68rem;opacity:0.9;letter-spacing:0.04em}.live-haramain-btn{background:#c81e1e;color:#fff;border:1px solid rgba(255,255,255,0.35);padding:0.32rem 0.75rem;border-radius:18px;font-size:0.76rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:0.28rem;margin:0;box-shadow:0 2px 8px rgba(0,0,0,0.22);min-width:0}.live-haramain-btn .live-dot{width:0.48rem;height:0.48rem;border-radius:50%;background:#fff;box-shadow:0 0 0 0 rgba(255,255,255,0.8);animation:livePulse 1.4s ease-out infinite}.live-haramain-btn.on{background:#0f4c3a}.live-haramain-btn.on .live-dot{background:#7dff9a}@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,0.7)}70%{box-shadow:0 0 0 6px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0)}}.live-place-select{background:rgba(255,255,255,0.18);color:white;border:1px solid rgba(255,255,255,0.45);padding:0.32rem 0.5rem;border-radius:18px;font-size:0.74rem;max-width:9.5rem;cursor:pointer}.live-place-select option{color:#222;background:#fff}.stream-controls{margin-top:0.22rem;display:flex;flex-wrap:wrap;gap:0.3rem;justify-content:center;align-items:center}.quran-stream-btn{background:rgba(255,255,255,0.97);color:#0f4c3a;border:none;padding:0.32rem 0.85rem;border-radius:18px;font-size:0.78rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:0.28rem;box-shadow:0 2px 8px rgba(0,0,0,0.18);transition:all 0.2s ease;min-width:118px;justify-content:center}.quran-stream-btn #stream-icon{font-size:0.72rem;line-height:1}.quran-stream-btn:hover{background:#fff;transform:scale(1.03)}.quran-stream-btn.playing{background:#0f4c3a;color:white}.quran-stream-btn.loading{opacity:0.85;cursor:wait}.stream-select{background:rgba(255,255,255,0.18);color:white;border:1px solid rgba(255,255,255,0.45);padding:0.38rem 0.65rem;border-radius:18px;font-size:0.78rem;max-width:200px;cursor:pointer}.stream-select option{color:#222;background:#fff}.volume-control{display:flex;align-items:center;gap:0.3rem;background:rgba(255,255,255,0.22);padding:0.28rem 0.65rem;border-radius:18px}.volume-control input[type="range"]{width:58px;accent-color:#fff}.mute-btn{background:none;border:none;color:white;font-size:0.88rem;cursor:pointer;padding:0.12rem;line-height:1}.nav-tabs{position:sticky;top:0;z-index:100;background:rgba(15,76,58,0.97);backdrop-filter:blur(8px);box-shadow:0 2px 12px rgba(0,0,0,0.15);overflow-x:auto;-webkit-overflow-scrolling:touch}.nav-tabs-inner{display:flex;gap:0.1rem;max-width:1400px;margin:0 auto;padding:0.28rem 0.45rem;justify-content:center;flex-wrap:nowrap}.nav-tab{background:rgba(255,255,255,0.12);color:rgba(255,255,255,0.95);border:1px solid rgba(255,255,255,0.18);padding:0.28rem 0.5rem 0.22rem;border-radius:10px 10px 0 0;font-size:0.78rem;font-weight:600;font-family:'Cormorant Garamond','Inter',serif;letter-spacing:0.01em;cursor:pointer;white-space:nowrap;transition:all 0.2s ease;text-shadow:0 1px 2px rgba(0,0,0,0.3);position:relative;margin-bottom:-1px;box-shadow:0 -2px 6px rgba(0,0,0,0.12);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0.06rem;line-height:1.15}.nav-tab .tab-label-row{display:inline-flex;align-items:center;justify-content:center}.nav-tab:hover{transform:translateY(-3px);box-shadow:0 -4px 12px rgba(0,0,0,0.2);filter:brightness(1.15)}.nav-tab.active{transform:translateY(-4px);box-shadow:0 -5px 14px rgba(0,0,0,0.22),inset 0 1px 0 rgba(255,255,255,0.5);font-weight:700;border-bottom:2px solid transparent;z-index:2}.nav-tab .tab-bubble{display:inline-flex;align-items:center;justify-content:center;width:1.1rem;height:1.1rem;font-size:0.72rem;border-radius:50%;background:rgba(255,255,255,0.28);font-size:0.78rem;line-height:1;margin-right:0.28rem;box-shadow:0 1px 3px rgba(0,0,0,0.15);flex-shrink:0}.nav-tab.active .tab-bubble{background:rgba(15,76,58,0.12);box-shadow:0 1px 2px rgba(0,0,0,0.08)}.nav-tab[data-tab="journey"]{background:linear-gradient(180deg,#2d8a5e,#1a6b52)}.nav-tab[data-tab="commands"]{background:linear-gradient(180deg,#3a8f6e,#28755a)}.nav-tab[data-tab="grave"]{background:linear-gradient(180deg,#5a9e4a,#3d7a35)}.nav-tab[data-tab="seerah"]{background:linear-gradient(180deg,#c49a4a,#a07a35)}.nav-tab[data-tab="tajweed"]{background:linear-gradient(180deg,#4a9e8a,#357a6a)}.nav-tab[data-tab="tafseer"]{background:linear-gradient(180deg,#7a6ab0,#5a4a90)}.nav-tab[data-tab="lectures"]{background:linear-gradient(180deg,#9a6ab0,#7a4a90)}.nav-tab[data-tab="search"]{background:linear-gradient(180deg,#4a8ab0,#356a90)}.nav-tab.active[data-tab="journey"]{background:linear-gradient(180deg,#e8f8f0,#d0f0e0);color:#0f4c3a;text-shadow:none}.nav-tab.active[data-tab="commands"]{background:linear-gradient(180deg,#e0f5ec,#c8ecd8);color:#0f4c3a;text-shadow:none}.nav-tab.active[data-tab="grave"]{background:linear-gradient(180deg,#e8f5d8,#d4ecc0);color:#2a5a20;text-shadow:none}.nav-tab.active[data-tab="seerah"]{background:linear-gradient(180deg,#f8f0e0,#f0e4c8);color:#6a4a20;text-shadow:none}.nav-tab.active[data-tab="tajweed"]{background:linear-gradient(180deg,#e0f5f0,#c8ece4);color:#1a5a4a;text-shadow:none}.nav-tab.active[data-tab="tafseer"]{background:linear-gradient(180deg,#f0e8f8,#e0d4f0);color:#4a3a70;text-shadow:none}.nav-tab.active[data-tab="lectures"]{background:linear-gradient(180deg,#f5e8f8,#ecd4f0);color:#5a3a70;text-shadow:none}.nav-tab.active[data-tab="search"]{background:linear-gradient(180deg,#e0f0f8,#c8e4f0);color:#2a5a70;text-shadow:none}.tab-visit-count{font-size:0.5rem;opacity:0.8;margin:0;font-weight:500;display:block;width:100%;text-align:center;font-family:'Inter',sans-serif;letter-spacing:0.01em;line-height:1}.meme-use-count{display:inline-block;min-width:1.1rem;padding:0.05rem 0.35rem;margin-left:0.2rem;font-size:0.72rem;font-weight:700;border-radius:999px;background:rgba(15,76,58,0.12);color:var(--accent);vertical-align:middle}.nav-tab.active .tab-visit-count{opacity:0.8}.visit-badge{background:rgba(255,255,255,0.9);border:1px solid var(--border);border-radius:20px;padding:0.25rem 0.7rem;font-size:0.82rem;color:var(--accent);margin-bottom:0.85rem;display:inline-flex;align-items:center;gap:0.35rem}.page-wrapper{display:flex;justify-content:center;gap:1.4rem;max-width:1400px;margin:0 auto;padding:1.3rem 0.85rem 2.5rem;width:100%;box-sizing:border-box}.main-content{width:100%;max-width:960px;flex-shrink:0;min-width:0;box-sizing:border-box}.page-wrapper{width:100%;max-width:1400px;box-sizing:border-box}.main-content{width:100%;max-width:960px;min-width:0;flex:1 1 auto;box-sizing:border-box}.tab-panel{display:none;width:100%;max-width:100%;box-sizing:border-box}.tab-panel>.card{background:var(--card-bg);border-radius:var(--radius);padding:1.1rem 1.15rem;margin-bottom:1rem;box-shadow:var(--shadow);border:1px solid var(--border);color:var(--text);transition:box-shadow 0.2s ease,transform 0.15s ease}.sidebar{width:200px;max-width:200px;min-width:0;box-sizing:border-box}.sidebar{width:210px;flex-shrink:0;display:none}@media (min-width:1100px){.sidebar{display:block}}.sidebar-card{background:var(--card-bg);border-radius:14px;padding:1.1rem;margin-bottom:1rem;box-shadow:0 4px 14px rgba(15,76,58,0.09);border:1px solid var(--border);position:sticky;top:4.2rem}.sidebar-card h3{font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--accent);margin-bottom:0.75rem;font-weight:600}.sidebar-card a{display:block;color:var(--accent);text-decoration:none;font-size:0.9rem;padding:0.4rem 0;border-bottom:1px solid #f0ebe3}.sidebar-card a:last-child{border-bottom:none}.sidebar-card a:hover{text-decoration:underline}.sidebar-note{font-size:0.76rem;color:#777;margin-top:0.8rem;line-height:1.4}.tab-panel{display:none !important;visibility:hidden !important;height:auto !important;overflow:visible !important;margin:0 !important;padding:0 !important;animation:none}.tab-panel.active{display:block !important;visibility:visible !important;height:auto !important;overflow:visible !important;animation:fadeIn 0.25s ease}#tab-notes:not(.active),#tab-notes:not(.active) #faraid-card,#tab-notes:not(.active) #wasiyyah-card,#tab-notes:not(.active) /* user-family-tree-card restored inside Amana Vault */#tab-notes.active{display:block !important;visibility:visible !important;height:auto !important;overflow:visible !important}#tab-notes:not(.active) #fiqh-workflow-card,#tab-notes:not(.active) #faraid-card,#tab-notes:not(.active) #wasiyyah-card,#tab-notes:not(.active) /* uft visible in vault */#tab-notes.active #fiqh-workflow-card,#tab-notes.active #faraid-card,#tab-notes.active #wasiyyah-card,#tab-notes.active #user-family-tree-card{display:block !important;visibility:visible !important;height:auto !important;pointer-events:auto !important}#fiqh-workflow-card{background:linear-gradient(145deg,#e8f5ec,#f3faf5);border:1px solid #8fc9a4}html[data-theme="dark"] #fiqh-workflow-card{background:linear-gradient(145deg,#1a2e24,#15241c);border-color:#3d6b52}.fiqh-flow-nav button{font-size:0.82rem}#tab-notes.active #faraid-card,#tab-notes.active #wasiyyah-card,#tab-notes.active #user-family-tree-card{display:block !important;visibility:visible !important;height:auto !important;pointer-events:auto !important}.card{transition:box-shadow 0.2s ease,transform 0.15s ease}.card:hover{box-shadow:0 8px 28px rgba(15,76,58,0.12)}.nav-tabs{backdrop-filter:blur(8px)}.tab-panel>.card+.card{margin-top:0.15rem}.deep-learn{margin-top:0.85rem;padding:0.65rem 0.8rem;border-radius:12px;border:1px solid rgba(15,76,58,0.15);background:linear-gradient(135deg,rgba(15,76,58,0.06),rgba(244,196,48,0.08));font-size:0.86rem;line-height:1.45}.deep-learn strong{color:var(--accent)}.deep-learn a{font-weight:600}html[data-theme="dark"] .deep-learn{background:linear-gradient(135deg,rgba(80,140,100,0.12),rgba(244,196,48,0.08));border-color:rgba(255,255,255,0.1)}@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.card{border-radius:16px;padding:1.35rem 1.3rem;margin-bottom:1.2rem;box-shadow:0 5px 18px rgba(15,76,58,0.09);border:1px solid rgba(0,0,0,0.06)}.card h2{font-family:'Cormorant Garamond',serif;font-size:1.5rem;color:var(--accent);margin-bottom:0.8rem;font-weight:600}.card-journey{background:linear-gradient(145deg,#d4f5e4,#e8fbf0);border-color:#8fd4b0}.card-commands{background:linear-gradient(145deg,#e0f0e8,#f0faf4);border:1px solid #7ec9a4}.card-lesson{background:linear-gradient(145deg,#fff3d6,#fff9eb);border-color:#f0d080}.card-stories{background:linear-gradient(145deg,#efe8d8,#f7f2e8);border-color:#d4c4a0}.card-life{background:linear-gradient(145deg,#f0e6d4,#f8f1e6);border-color:#d9c3a0}.card-search{background:linear-gradient(145deg,#e4eef5,#f0f6fa);border-color:#a8c5d8}.card-verse{background:linear-gradient(145deg,#d8f0e4,#eaf7f0);border-color:#7ec9a8}.card-hadith{background:linear-gradient(145deg,#e0f0f5,#eef7fa);border-color:#8ebfd0}.card-seerah{background:linear-gradient(145deg,#f5e8d8,#faf2e8);border-color:#e0c8a8}.card-zikr{background:linear-gradient(145deg,#f5e0ee,#faf0f6);border-color:#e0a8c8}.card-grave{background:linear-gradient(145deg,#e4f0d4,#f0f7e6);border:1px solid #a8c878}.card-israeliyat{background:linear-gradient(145deg,#ebe4d4,#f5f0e6);border-color:#d0c0a0}.card-hifz{background:linear-gradient(145deg,#d0f0e4,#e4f7f0);border:1px solid #70c0a0}.card-tafseer{background:linear-gradient(145deg,#e8e4f5,#f2f0fa);border:1px solid #b0a0d8}.card-tajweed{background:linear-gradient(145deg,#e0f5f0,#eefaf6);border:1px solid #7ec9b0}.card-lectures{background:linear-gradient(145deg,#f0e8f5,#f7f0fa);border:1px solid #c0a0d0}.card-questions{background:linear-gradient(145deg,#fff0e0,#fff8f0);border-color:#f0c8a0}.card-grok{background:linear-gradient(145deg,#e0f0e8,#eef7f2);border-color:#90c8b0}.tajweed-level,.lecture-box{background:rgba(255,255,255,0.85);border-radius:14px;padding:1.15rem 1.2rem;margin:1rem 0;border:1px solid #b8dcc8}.lecture-box{border-color:#d0b8e0}.tajweed-level h3,.lecture-box h3{font-family:'Cormorant Garamond',serif;font-size:1.28rem;color:var(--accent);margin-bottom:0.4rem;font-weight:600}.tajweed-level .level-goal{font-size:0.92rem;color:#444;margin-bottom:0.7rem;font-style:italic}.tajweed-level h4,.lecture-box h4{font-size:1.02rem;color:var(--accent);margin:0.85rem 0 0.4rem;font-weight:600}.tajweed-level ul,.tajweed-level ol,.lecture-box ul{margin:0.35rem 0 0.6rem 1.2rem;font-size:0.94rem}.tajweed-level li,.lecture-box li{margin-bottom:0.35rem}.tajweed-level a,.lecture-box a{color:var(--accent);text-decoration:none;font-weight:500}.tajweed-level a:hover,.lecture-box a:hover{text-decoration:underline}.tajweed-note,.lecture-note{font-size:0.87rem;color:#555;margin-top:0.7rem;line-height:1.5;background:rgba(15,76,58,0.06);padding:0.6rem 0.8rem;border-radius:8px}.spotify-player-wrap{margin-top:0.85rem;border-radius:12px;overflow:hidden;background:#191414}.spotify-player-wrap iframe{display:block;width:100%;border:0}.welcome-box{background:rgba(255,255,255,0.80);border-left:5px solid var(--accent);padding:0.95rem 1.1rem;border-radius:12px;margin-bottom:0.7rem}.welcome-box .salam{font-size:1.3rem;color:var(--accent);font-weight:600;font-family:'Cormorant Garamond',serif}.stats-row{display:flex;gap:0.65rem;flex-wrap:wrap;margin-top:0.65rem}.stat{background:white;border:1px solid var(--border);padding:0.35rem 0.9rem;border-radius:30px;font-size:0.9rem;color:var(--accent);font-weight:500}.notify-row{margin-top:0.85rem;padding-top:0.75rem;border-top:1px dashed #c5d9cc;display:flex;align-items:center;gap:0.65rem;flex-wrap:wrap}.notify-toggle{display:flex;align-items:center;gap:0.45rem;font-size:0.9rem;cursor:pointer}.notify-toggle input{width:17px;height:17px;accent-color:var(--accent)}input[type="text"],input[type="number"],textarea,select{width:100%;padding:0.65rem 0.95rem;border:1px solid var(--border);border-radius:10px;font-size:0.98rem;margin:0.45rem 0;font-family:inherit}button,.btn{background:var(--accent);color:white;border:none;padding:0.65rem 1.2rem;border-radius:10px;cursor:pointer;font-size:0.95rem;font-weight:500;margin-top:0.5rem;margin-right:0.4rem}button:hover,.btn:hover{background:var(--accent-light)}.btn-secondary{background:#5a7d6e}.btn-soft{background:#3d6b54}.arabic-calligraphy{font-size:1.75rem;font-weight:600;direction:rtl;text-align:center;margin:0.85rem 0;line-height:2.2;color:#1a2a1a;padding:0.95rem 0.85rem;background:linear-gradient(145deg,rgba(255,255,255,0.92),rgba(248,245,238,0.88));border-radius:12px;border:1px solid rgba(15,76,58,0.12);box-shadow:inset 0 1px 0 rgba(255,255,255,0.8),0 2px 6px rgba(15,76,58,0.06);text-shadow:0 1px 0 rgba(255,255,255,0.7),0 1.5px 2px rgba(0,0,0,0.1)}.ref{font-size:0.85rem;color:#666;margin-top:0.5rem;font-style:italic}.modern-context,.shariah-advice,.grave-note,.ponder-box{margin-top:0.85rem;padding:0.85rem 1rem;background:rgba(255,255,255,0.75);border-radius:12px;border-left:4px solid var(--accent);font-size:0.94rem}.deposit-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;margin:0.95rem 0}@media (max-width:500px){.deposit-grid{grid-template-columns:1fr}}.deposit-item{background:rgba(255,255,255,0.75);border-radius:12px;padding:0.9rem;text-align:center;border:1px solid #c5d9a8}.deposit-item .count{font-size:1.65rem;font-weight:700;color:var(--accent);display:block;margin:0.25rem 0}.deposit-item button{margin-top:0.35rem;padding:0.4rem 0.95rem;font-size:0.88rem}.hell-warn{background:linear-gradient(180deg,rgba(90,18,18,0.08),rgba(255,255,255,0.72));border:1px solid #c9a06a;border-left:5px solid #8a3030;border-radius:14px;padding:1rem 1.05rem 1.15rem;margin:0.85rem 0}.hell-warn h2{color:#6b1d1d;margin-bottom:0.35rem}html[data-theme="dark"] .hell-warn{background:rgba(40,12,12,0.45);border-color:#7a4a3a}html[data-theme="dark"] .hell-warn h2{color:#f0c27a}.hell-item{border-bottom:1px solid rgba(0,0,0,0.07);padding:0.7rem 0.15rem}.hell-item:last-child{border-bottom:none}.hell-item summary{cursor:pointer;font-weight:650;list-style:none;color:var(--accent)}.hell-item summary::-webkit-details-marker{display:none}.hell-item summary:before{content:"▸ ";opacity:0.7}.hell-item[open] summary:before{content:"▾ "}.hell-item .body{font-size:0.92rem;line-height:1.55;padding:0.55rem 0 0.2rem}.hell-src{font-size:0.82rem;color:var(--text-muted);margin-top:0.35rem}.tawbah-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0.45rem;margin-top:0.55rem}.tawbah-grid div{background:rgba(255,255,255,0.65);border-radius:10px;padding:0.55rem 0.65rem;font-size:0.86rem;border:1px solid var(--border)}.command-box{background:rgba(255,255,255,0.75);border-radius:14px;padding:1.1rem;margin:0.75rem 0;border:1px solid #b8d4c0}.command-status{display:flex;align-items:center;gap:0.55rem;margin-top:0.85rem;flex-wrap:wrap}.status-badge{display:inline-block;padding:0.28rem 0.8rem;border-radius:20px;font-size:0.84rem;font-weight:500}.status-working{background:#d0ecd8;color:#0f4c3a}.status-not{background:#f0f0f0;color:#777}.search-row{display:flex;gap:0.45rem;margin-bottom:0.75rem}.search-row input{flex:1;margin:0}.search-row button{margin-top:0;padding:0.65rem 1rem}.search-result{background:rgba(255,255,255,0.80);border-radius:12px;padding:0.95rem;margin-top:0.7rem;border:1px solid var(--border)}.story-title{font-size:1.18rem;color:var(--accent);font-weight:600;margin-bottom:0.55rem}.question{cursor:pointer;padding:0.85rem 0.45rem;border-bottom:1px solid rgba(0,0,0,0.06)}.question:last-child{border-bottom:none}.question:hover{background:rgba(255,255,255,0.55);border-radius:10px}.answer{display:none;padding:0.95rem;background:rgba(255,255,255,0.70);border-radius:12px;margin-top:0.45rem}.answer.show{display:block}.hifz-controls{display:grid;grid-template-columns:1fr 1fr;gap:0.65rem;margin-bottom:0.95rem}@media (max-width:500px){.hifz-controls{grid-template-columns:1fr}}.hifz-progress{background:rgba(255,255,255,0.80);border-radius:12px;padding:0.9rem;margin:0.75rem 0;border:1px solid #a0d4b8}.hifz-ayah{background:rgba(255,255,255,0.85);border-radius:12px;padding:1rem;margin-top:0.75rem;border:1px solid var(--border)}.hifz-hidden{filter:blur(7px);user-select:none}.recall-btns{margin-top:0.75rem;display:flex;gap:0.45rem;flex-wrap:wrap}.tafseer-progress{background:rgba(255,255,255,0.80);border-radius:12px;padding:0.9rem;margin:0.75rem 0;border:1px solid #c0b0e0}.tafseer-item{background:rgba(255,255,255,0.85);border-radius:12px;padding:0.95rem;margin-top:0.65rem;border:1px solid var(--border)}.tafseer-item.studied{border-left:4px solid #0f4c3a}.grok-box textarea{width:100%;min-height:95px;padding:0.85rem;border:1px solid var(--border);border-radius:12px;font-size:0.96rem;font-family:inherit;resize:vertical;margin:0.55rem 0}.grok-note{font-size:0.86rem;color:#555;margin-top:0.55rem;line-height:1.5}footer{text-align:center;font-size:0.78rem;color:#666;margin-top:1.6rem;padding:0 1rem 1.2rem;line-height:1.55}.loading-msg{color:#666;font-style:italic;padding:0.9rem 0}
/* Clean mobile banner */
@media (max-width:900px){
  .banner-tools{top:0.35rem;right:0.35rem;left:auto;gap:0.25rem;flex-wrap:wrap;max-width:70%;justify-content:flex-end}
  .banner-tools .theme-toggle,.a11y-bar button{padding:0.28rem 0.5rem;font-size:0.68rem}
  .beginner-toggle-wrap span{display:none}
  .beginner-toggle-wrap{padding:0.2rem}
  .banner-center .bismillah{font-size:0.85rem}
  .banner h1{font-size:1.25rem !important}
  .banner .subtitle{font-size:0.68rem}
  .banner .place-name{font-size:0.62rem}
  .banner-overlay{padding:0.45rem 0.4rem 0.5rem;gap:0.25rem}
  .stream-controls{gap:0.25rem}
  .quran-stream-btn,.live-haramain-btn{font-size:0.7rem;padding:0.28rem 0.55rem}
  .live-place-select,.stream-select{font-size:0.68rem;max-width:8rem}
  .rabbana-box{padding:0.2rem 0.45rem}
  .rabbana-arabic{font-size:0.82rem}
  .rabbana-english{font-size:0.62rem}
  .banner-event-strip,.banner-mobile-strip{font-size:0.62rem;padding:0.18rem 0.4rem}
  .clarity-speak-bar,#clarity-speak-mute,.lang-select{display:none !important}
}
@media (max-width:560px){
  .banner-tools{position:absolute;top:0.25rem;right:0.25rem}
  .one-action-strip{padding:0.65rem 0.75rem}
  .mv-chip{font-size:0.72rem;padding:0.35rem 0.55rem}
  .meme-chip-wrap{gap:0.3rem}
  .meme-studio-cols{display:flex;flex-direction:column}
}
@media (max-width:900px){
  .banner-side{display:none}
  .banner-overlay{flex-direction:column;align-items:center;min-height:0;padding:0.4rem 0.55rem 0.5rem}
  .banner{min-height:0}
  .banner-center{max-width:100%;width:100%;padding:0 0.15rem}
  .banner-mobile-strip{display:flex}
  .banner h1{font-size:1.35rem}
  .banner .subtitle{font-size:0.72rem}
  .banner .rabbana-box{max-width:100%;width:100%;margin-top:0.12rem;padding:0.2rem 0.5rem}
  .rabbana-arabic{font-size:0.88rem}
  .banner .rabbana-english{font-size:0.68rem}
  .stream-controls{
    display:flex;flex-wrap:wrap;gap:0.28rem;justify-content:center;align-items:center;
    margin-top:0.28rem;width:100%;max-width:100%
  }
  .live-haramain-btn,.quran-stream-btn{
    min-height:2.1rem;padding:0.38rem 0.75rem;font-size:0.78rem
  }
  .live-place-select,.stream-select{
    min-height:2.1rem;padding:0.32rem 0.45rem;font-size:0.74rem;max-width:9rem
  }
  .volume-control{min-height:2.1rem;padding:0.22rem 0.55rem}
  .volume-control input[type="range"]{width:72px}
}
@media (max-width:700px){
  .nav-tabs-inner{justify-content:flex-start;padding-left:0.8rem;padding-right:0.8rem}
  .banner h1{font-size:1.28rem}
  .banner{min-height:0}
  .banner-overlay{min-height:0;padding:0.35rem 0.4rem 0.45rem}
  .stream-controls{gap:0.25rem}
}:root{--bg:#f7f3eb;--bg-elevated:#faf7f0;--text:#1c241c;--text-muted:#5a6358;--accent:#0f4c3a;--accent-light:#1a6b52;--accent-fg:#f7f3eb;--accent-soft:#dce8e1;--border:#e5ddd0;--card-bg:rgba(255,255,255,0.94);--banner:#0f4c3a;--gold:#b0892e;--shadow:0 0 0 1px rgba(28,36,28,0.06),0 2px 8px rgba(28,36,28,0.05)}html[data-theme="dark"]{
--bg:#0c1410;
--bg-elevated:#152019;
--text:#e7efe9;
--text-muted:#9aab9f;
--accent:#4caf82;
--accent-light:#6bc49a;
--accent-fg:#0a120e;
--accent-soft:#1a2e26;
--border:#2a3830;
--card-bg:rgba(20,30,25,0.96);
--banner:#0a1812;
--gold:#d4b45a;
--gold-soft:#3a3420;
--sky:#6a9fb5;
--sky-soft:#1a2830;
--accent:#a890c4;
--accent-soft:#2a2435;
--grave:#1e3329;
--shadow:0 4px 20px rgba(0,0,0,0.4);
color-scheme:dark
}html[data-theme="dark"] body{background:linear-gradient(180deg,rgba(12,20,16,0.78) 0%,rgba(15,22,18,0.85) 50%,rgba(12,20,16,0.88) 100%);background-color:#0f1612}html[data-theme="dark"] body::before{background:rgba(12,20,16,0.62)}html[data-theme="dark"] .arabic-calligraphy{color:#e8efe8;background:linear-gradient(145deg,rgba(30,40,34,0.95),rgba(22,32,26,0.9));border-color:rgba(61,155,114,0.25);text-shadow:none}html[data-theme="dark"] .card{box-shadow:var(--shadow)}html[data-theme="dark"] .sidebar-card a{border-color:#2a3830;color:var(--accent)}html[data-theme="dark"] .stat{background:var(--bg-elevated);border-color:var(--border);color:var(--accent)}html[data-theme="dark"] .welcome-box{background:rgba(30,40,34,0.85)}html[data-theme="dark"] .modern-context,html[data-theme="dark"] .ponder-box,html[data-theme="dark"] .shariah-advice,html[data-theme="dark"] .grave-note{background:rgba(30,40,34,0.8);color:var(--text)}html[data-theme="dark"] .deposit-item{background:rgba(30,40,34,0.85);border-color:#2a3830}html[data-theme="dark"] .command-box,html[data-theme="dark"] .search-result,html[data-theme="dark"] .hifz-ayah,html[data-theme="dark"] .tafseer-item,html[data-theme="dark"] .tajweed-level,html[data-theme="dark"] .lecture-box{background:rgba(30,40,34,0.88);border-color:var(--border);color:var(--text)}html[data-theme="dark"] input[type="text"],html[data-theme="dark"] input[type="number"],html[data-theme="dark"] textarea,html[data-theme="dark"] select{background:var(--bg-elevated);color:var(--text);border-color:var(--border)}html[data-theme="dark"] .ref{color:var(--text-muted)}html[data-theme="dark"] .loading-msg{color:var(--text-muted)}body{background-color:var(--bg);color:var(--text);transition:background-color 0.25s ease,color 0.25s ease}.card{background:var(--card-bg);box-shadow:var(--shadow);transition:box-shadow 0.2s ease,transform 0.2s ease}button,.btn{background:var(--accent);transition:background 0.15s ease,transform 0.15s ease}button:active,.btn:active{transform:scale(0.98)}.banner-tools{position:absolute;top:0.55rem;right:0.55rem;z-index:6;display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:0.35rem;width:auto;max-width:none;direction:ltr}.theme-toggle{position:static;display:inline-flex;align-items:center;gap:0.3rem;background:rgba(255,255,255,0.18);color:#fff;border:1px solid rgba(255,255,255,0.35);padding:0.35rem 0.65rem;border-radius:999px;font-size:0.75rem;font-weight:600;cursor:pointer;backdrop-filter:blur(6px);white-space:nowrap;margin:0;width:auto;flex:0 0 auto}.theme-toggle:hover{background:rgba(255,255,255,0.28)}.progress-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:0.5rem;margin-bottom:1rem}@media (min-width:520px){.progress-strip{grid-template-columns:repeat(4,1fr)}}.stat-pill{display:flex;align-items:center;gap:0.5rem;background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:0.55rem 0.7rem;box-shadow:var(--shadow)}.stat-pill .icon{width:1.7rem;height:1.7rem;border-radius:8px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:0.85rem}.stat-pill .label{font-size:0.65rem;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-muted);font-weight:600}.stat-pill .value{font-size:0.95rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.hifz-goal-bar{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:0.85rem 1rem;margin-bottom:1rem;box-shadow:var(--shadow)}.hifz-goal-bar .row{display:flex;justify-content:space-between;font-size:0.88rem;margin-bottom:0.4rem}.hifz-goal-bar .track{height:0.55rem;border-radius:999px;background:var(--accent-soft);overflow:hidden}.hifz-goal-bar .fill{height:100%;border-radius:999px;background:var(--accent);width:0%;transition:width 0.5s cubic-bezier(0.22,1,0.36,1)}.mobile-bottom-nav{display:none;position:fixed;inset-inline:0;bottom:0;z-index:200;background:color-mix(in srgb,var(--card-bg) 92%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding:0.25rem 0.2rem max(0.35rem,env(safe-area-inset-bottom))}.mobile-bottom-nav-inner{display:flex;justify-content:space-around;max-width:520px;margin:0 auto}.mb-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:0.15rem;padding:0.45rem 0.2rem;background:none;border:none;color:var(--text-muted);font-size:0.62rem;font-weight:600;cursor:pointer;min-height:3rem;margin:0}.mb-tab.active{color:var(--accent)}.mb-tab .mb-icon{font-size:1.15rem;line-height:1}@media (max-width:900px){.mobile-bottom-nav{display:block}.nav-tabs{display:none}.page-wrapper{padding-bottom:5.5rem}.sidebar{display:none !important}}.scroll-top-btn{position:fixed;right:1rem;bottom:calc(4.5rem+env(safe-area-inset-bottom,0px));z-index:190;width:2.75rem;height:2.75rem;border-radius:999px;background:var(--accent);color:var(--accent-fg);border:none;box-shadow:var(--shadow);cursor:pointer;font-size:1.15rem;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity 0.2s,transform 0.2s;margin:0;padding:0}@media (min-width:901px){.scroll-top-btn{bottom:1.5rem}}.scroll-top-btn.show{opacity:1;pointer-events:auto;transform:translateY(0)}.bm-btn{background:var(--accent-soft) !important;color:var(--accent) !important;border:1px solid var(--border);font-size:0.82rem;padding:0.4rem 0.8rem !important;margin-top:0.5rem}.bm-item .bm-title{font-weight:600;color:var(--accent);font-size:0.9rem}.bm-item .bm-snip{font-size:0.88rem;margin-top:0.25rem;color:var(--text)}.bm-item .bm-ref{font-size:0.78rem;color:var(--text-muted);font-style:italic;margin-top:0.2rem}.nav-tab[data-tab="notes"]{background:linear-gradient(180deg,#6a8a5a,#4a6a3a)}.nav-tab.active[data-tab="notes"]{background:linear-gradient(180deg,#e8f5e0,#d4ecc8);color:#2a4a20;text-shadow:none}.card-notes{background:linear-gradient(145deg,#e8f0e0,#f2f7ec);border:1px solid #a8c890}.notes-shell{display:grid;grid-template-columns:minmax(200px,240px) 1fr;gap:0.85rem;min-height:520px;background:var(--card-bg);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}@media (max-width:700px){.notes-shell{grid-template-columns:1fr;min-height:0}.notes-list-pane.collapsed-mobile{display:none}.notes-editor-pane.hidden-mobile{display:none}}.notes-list-pane{border-right:1px solid var(--border);background:var(--bg-elevated);display:flex;flex-direction:column;max-height:640px}.notes-list-toolbar{padding:0.7rem 0.75rem 0.5rem;display:flex;flex-direction:column;gap:0.45rem;border-bottom:1px solid var(--border)}.notes-search{width:100%;margin:0;padding:0.5rem 0.7rem;font-size:0.88rem;border-radius:10px}.notes-toolbar-row{display:flex;gap:0.35rem;flex-wrap:wrap}.notes-toolbar-row button{margin:0;padding:0.4rem 0.65rem;font-size:0.8rem;border-radius:8px;flex:1;min-width:0}.notes-tag-filter{display:flex;flex-wrap:wrap;gap:0.25rem;padding:0.35rem 0.65rem 0.55rem}.notes-tag-chip{font-size:0.68rem;padding:0.18rem 0.5rem;border-radius:999px;border:1px solid var(--border);background:var(--card-bg);color:var(--text-muted);cursor:pointer;font-weight:600}.notes-tag-chip.active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.notes-list{overflow-y:auto;flex:1;padding:0.35rem}.note-item{padding:0.65rem 0.7rem;border-radius:10px;cursor:pointer;border:1px solid transparent;margin-bottom:0.25rem;transition:background 0.15s,border-color 0.15s}.note-item:hover{background:rgba(15,76,58,0.06)}.note-item.active{background:var(--accent-soft);border-color:rgba(15,76,58,0.25)}html[data-theme="dark"] .note-item:hover{background:rgba(61,155,114,0.12)}.note-item .ni-title{font-weight:600;font-size:0.9rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-item .ni-meta{display:flex;justify-content:space-between;gap:0.4rem;font-size:0.7rem;color:var(--text-muted);margin-top:0.2rem}.note-item .ni-tag{background:rgba(15,76,58,0.1);color:var(--accent);padding:0.05rem 0.4rem;border-radius:6px;font-weight:600}.notes-editor-pane{display:flex;flex-direction:column;min-height:480px;max-height:min(72vh,720px);padding:0.75rem 0.9rem 0.9rem;overflow:hidden;min-width:0}
.notes-editor-pane.empty-mode #notes-editor-empty{display:flex !important}
.notes-editor-pane.empty-mode #notes-editor-active{display:none !important}
.notes-editor-pane.has-note #notes-editor-empty{display:none !important}
.notes-editor-pane.has-note #notes-editor-active{display:flex !important;flex-direction:column;flex:1;min-height:0;overflow:hidden}
#notes-editor-active{min-height:0;overflow:hidden}.notes-editor-toolbar{display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;margin-bottom:0.55rem}.notes-editor-toolbar button,.notes-editor-toolbar select{margin:0;padding:0.35rem 0.65rem;font-size:0.8rem;border-radius:8px}.notes-editor-toolbar select{width:auto;max-width:130px;margin:0;padding:0.35rem 0.5rem}.notes-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.notes-view-toggle button{background:transparent;color:var(--text-muted);border:none;border-radius:0;padding:0.35rem 0.55rem;margin:0}.notes-view-toggle button.active{background:var(--accent);color:var(--accent-fg)}.notes-title-input{font-family:'Cormorant Garamond',serif;font-size:1.35rem;font-weight:600;border:none;background:transparent;color:var(--text);padding:0.25rem 0;margin:0 0 0.35rem;width:100%;border-bottom:1px solid transparent}.notes-title-input:focus{outline:none;border-bottom-color:var(--accent)}.notes-body-area{flex:1;display:grid;grid-template-columns:1fr;gap:0.65rem;min-height:0;overflow:hidden;align-items:stretch}.notes-body-area.split{grid-template-columns:1fr 1fr}.notes-body-area.preview-only .notes-body-input{display:none}.notes-body-area.edit-only .notes-md-preview{display:none}.notes-body-input{width:100%;height:100%;min-height:0;max-height:100%;resize:none;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:0.88rem;line-height:1.55;padding:0.75rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-elevated);color:var(--text)}.notes-md-preview{overflow-y:auto;padding:0.85rem 1rem;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,0.55);font-size:0.94rem;line-height:1.65}html[data-theme="dark"] .notes-md-preview{background:rgba(30,40,34,0.75)}.notes-md-preview h1,.notes-md-preview h2,.notes-md-preview h3{font-family:'Cormorant Garamond',serif;color:var(--accent);margin:0.85rem 0 0.4rem}.notes-md-preview h1{font-size:1.35rem}.notes-md-preview h2{font-size:1.18rem}.notes-md-preview h3{font-size:1.05rem}.notes-md-preview p{margin:0.45rem 0}.notes-md-preview ul,.notes-md-preview ol{margin:0.4rem 0 0.4rem 1.2rem}.notes-md-preview blockquote{border-left:3px solid var(--accent);margin:0.6rem 0;padding:0.35rem 0.75rem;color:var(--text-muted);background:var(--accent-soft);border-radius:0 8px 8px 0}.notes-md-preview code{font-size:0.85em;background:var(--accent-soft);padding:0.1rem 0.35rem;border-radius:4px}.notes-md-preview table{border-collapse:collapse;width:100%;margin:0.5rem 0;font-size:0.88rem}.notes-md-preview th,.notes-md-preview td{border:1px solid var(--border);padding:0.35rem 0.5rem;text-align:left}.notes-md-preview th{background:var(--accent-soft)}.notes-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);text-align:center;padding:2rem 1rem;gap:0.75rem}.notes-status{font-size:0.72rem;color:var(--text-muted);margin-top:0.4rem;display:flex;justify-content:space-between;align-items:center;gap:0.5rem;flex-wrap:wrap;flex-shrink:0}
.notes-save-now{margin:0 !important;padding:0.32rem 0.7rem !important;font-size:0.75rem !important;border-radius:999px !important;background:var(--accent);color:var(--accent-fg)}
.notes-save-now.saved{background:rgba(31,166,122,0.22);color:var(--accent-light)}
.today-deed{display:flex;flex-direction:column;gap:.28rem}
.today-deed .deed-kicker{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;opacity:.8;font-weight:700}
.today-deed .deed-text{margin:0;font-size:.98rem;line-height:1.45}
.today-path-meta{opacity:.9;font-size:.88rem;margin:0 0 .15rem}
.note-link-btn{margin:0 !important}
#notes-editor-active.flash-deed{box-shadow:inset 0 0 0 2px var(--gold)}
.notes-grave-badge{display:inline-flex;align-items:center;gap:0.25rem;background:linear-gradient(135deg,#e4f0d4,#d0e8b8);color:#2a5a20;font-size:0.72rem;font-weight:600;padding:0.2rem 0.55rem;border-radius:999px;border:1px solid #a8c878}html[data-theme="dark"] .notes-grave-badge{background:#1e3329;color:#8fd4a0;border-color:#2a4838}.quick-note-btn{background:var(--accent-soft) !important;color:var(--accent) !important;border:1px solid var(--border);font-size:0.82rem;padding:0.4rem 0.85rem !important;margin-top:0.55rem}.notes-hint{font-size:0.82rem;color:var(--text-muted);margin-top:0.5rem;line-height:1.45}
.meme-atelier-skin{border-radius:18px;overflow:hidden;background:linear-gradient(165deg,#0c1814 0%,#13241c 55%,#0a1410 100%);color:#eef6f1;border:1px solid rgba(212,180,90,.28);box-shadow:0 18px 40px rgba(8,24,16,.22);padding:0.85rem}
.meme-atelier-skin .meme-toolbar{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.55rem}
.meme-atelier-kicker{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#d4b45a;font-weight:700;margin-bottom:.2rem}
.meme-atelier-skin select,.meme-atelier-skin textarea,.meme-atelier-skin input[type=url],.meme-atelier-skin input[type=text]{background:#0e1a16;color:#eef6f1;border:1px solid rgba(255,255,255,.16)}
.meme-atelier-skin .notes-hint,.meme-atelier-skin .meme-urdu-desc,.meme-atelier-skin .meme-wm-note{color:#c9d6ce}
.meme-atelier-skin .meme-urdu-title{color:#d4b45a}
.meme-studio{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:0.85rem;box-shadow:var(--shadow)}.meme-toolbar{display:flex;flex-wrap:wrap;gap:0.45rem;margin-bottom:0.75rem;align-items:center}.meme-toolbar::-webkit-scrollbar{height:4px}.meme-toolbar::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.meme-upload-btn{display:inline-flex;align-items:center;gap:0.3rem;background:var(--accent);color:var(--accent-fg);padding:0.5rem 0.9rem;border-radius:10px;font-size:0.88rem;font-weight:600;cursor:pointer;margin:0}.meme-upload-btn:hover{background:var(--accent-light)}.meme-toolbar select{width:auto;min-width:140px;max-width:100%;margin:0;padding:0.45rem 0.65rem;font-size:0.86rem}.meme-stage-wrap{width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border-radius:12px;background:#111;border:1px solid var(--border)}.meme-stage{position:relative;width:100%;max-width:800px;margin:0 auto;aspect-ratio:4 / 3;background:#1a1a1a;touch-action:none;user-select:none}.meme-stage canvas{display:block;width:100%;height:100%;vertical-align:top}.meme-text-box{position:absolute;left:50%;transform:translateX(-50%);width:auto;min-width:5.5rem;max-width:90%;z-index:3;pointer-events:none}.meme-text-box .meme-drag-handle{pointer-events:auto}.meme-text-box.top{top:4%}.meme-text-box.middle{top:50%}.meme-text-box.bottom{bottom:4%;top:auto}.search-result{margin-bottom:0.85rem;padding:0.75rem 0.9rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-elevated,#faf8f4)}.search-result .sr-ar{font-family:'Scheherazade New',Amiri,'Noto Naskh Arabic',serif;font-size:1.35rem;direction:rtl;text-align:right;line-height:1.85;margin-bottom:0.4rem;color:var(--text)}.search-result .sr-en{font-size:0.95rem;margin:0.25rem 0}.search-result .sr-ur{font-family:'Noto Naskh Arabic','Scheherazade New',serif;direction:rtl;text-align:right;font-size:1.05rem;line-height:1.75;color:var(--accent);margin:0.35rem 0}.search-result .sr-actions{margin-top:0.45rem;display:flex;flex-wrap:wrap;gap:0.35rem}.meme-text-box .meme-drag-handle{display:flex;justify-content:center;align-items:center;height:1.5rem;padding:0 0.75rem;background:rgba(15,76,58,0.88);color:#fff;font-size:0.72rem;font-weight:700;letter-spacing:0.06em;border-radius:999px;cursor:grab;touch-action:none;box-shadow:0 2px 8px rgba(0,0,0,0.35);white-space:nowrap;user-select:none}.meme-text-box.dragging .meme-drag-handle{cursor:grabbing;background:rgba(15,76,58,1);transform:scale(1.05)}.meme-controls{margin-top:0.75rem;display:flex;flex-direction:column;gap:0.55rem}.meme-ctrl-row{display:flex;align-items:center;gap:0.65rem;flex-wrap:wrap;font-size:0.88rem}.meme-ctrl-row label{min-width:7.5rem;color:var(--text-muted);font-weight:600}.meme-ctrl-row input[type="range"]{flex:1;min-width:120px;accent-color:var(--accent)}.meme-actions{justify-content:flex-end;gap:0.45rem}.meme-actions button{margin:0}.meme-urdu-section{margin-top:1.1rem;padding-top:0.95rem;border-top:1px dashed var(--border)}.meme-urdu-title{font-family:'Cormorant Garamond',serif;font-size:1.2rem;color:var(--accent);margin-bottom:0.35rem;font-weight:600}.meme-urdu-desc{font-size:0.88rem;color:var(--text-muted);margin-bottom:0.65rem;line-height:1.45}.meme-urdu-toolbar{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:0.65rem}.meme-urdu-toolbar button{margin:0;padding:0.45rem 0.85rem;font-size:0.86rem}.meme-urdu-preview{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;padding:0.85rem 1rem;margin-bottom:0.65rem;min-height:4.5rem}.meme-urdu-empty{color:var(--text-muted);font-size:0.9rem;font-style:italic}.meme-urdu-preview .mu-arabic{font-family:'Scheherazade New',Amiri,'Noto Naskh Arabic',serif;direction:rtl;font-size:1.35rem;line-height:1.85;color:var(--text);margin-bottom:0.35rem;text-align:center}.meme-urdu-preview .mu-urdu{font-family:'Noto Naskh Arabic','Scheherazade New',serif;direction:rtl;font-size:1.05rem;line-height:1.7;color:var(--accent);text-align:center;margin-bottom:0.25rem}.meme-urdu-preview .mu-en{font-size:0.88rem;color:var(--text-muted);text-align:center;margin-top:0.25rem}.meme-urdu-preview .mu-ref{font-size:0.78rem;color:var(--text-muted);font-style:italic;text-align:center;margin-top:0.35rem}.meme-urdu-url-row{display:flex;gap:0.4rem;flex-wrap:wrap}.meme-urdu-url-row input{flex:1;min-width:160px;margin:0;font-size:0.88rem}.meme-urdu-url-row button{margin:0;padding:0.5rem 0.9rem;font-size:0.86rem;white-space:nowrap}.meme-size-grid{display:grid;grid-template-columns:1fr;gap:0.45rem;width:100%}
.meme-size-row{display:grid;grid-template-columns:4.5rem 1fr 2.6rem;align-items:center;gap:0.45rem;font-size:0.84rem}
.meme-size-row label{margin:0;font-weight:600;color:var(--accent);white-space:nowrap}
.meme-size-row input[type=range]{width:100%;margin:0;accent-color:var(--accent)}
.meme-size-row .sz-val{font-variant-numeric:tabular-nums;text-align:right;font-weight:600;color:var(--text-muted)}
.meme-line-tools{display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;margin-top:0.25rem}
.meme-line-tools button{margin:0;padding:0.35rem 0.65rem;font-size:0.78rem;border-radius:8px}
.meme-sticky-export{display:none}
@media (max-width:700px){
  .meme-stage{max-width:100%}
  .meme-stage-wrap{margin-left:-0.25rem;margin-right:-0.25rem;border-radius:10px}
  .meme-text-box .meme-drag-handle{height:1.75rem;padding:0 0.9rem;font-size:0.78rem}
  .meme-sticky-export{
    display:flex;position:sticky;bottom:calc(3.6rem + env(safe-area-inset-bottom,0px));z-index:50;
    gap:0.4rem;padding:0.45rem;background:color-mix(in srgb,var(--card-bg) 92%,transparent);
    backdrop-filter:blur(8px);border:1px solid var(--border);border-radius:12px;margin-top:0.5rem;
  }
  .meme-sticky-export button{flex:1;margin:0;padding:0.65rem 0.5rem;font-size:0.88rem}
}
@media (max-width:560px){
  .meme-toolbar{
    flex-direction:row;flex-wrap:nowrap;align-items:center;
    overflow-x:auto;-webkit-overflow-scrolling:touch;
    gap:0.35rem;padding-bottom:0.25rem;
    scrollbar-width:thin;
  }
  .meme-toolbar select,
  .meme-toolbar button,
  .meme-upload-btn{
    width:auto;min-width:max-content;max-width:none;
    flex:0 0 auto;justify-content:center;
    font-size:0.8rem;padding:0.42rem 0.65rem;
  }
  .meme-toolbar select{min-width:7.5rem}
  .meme-text-box textarea{font-size:0.95rem}
  .meme-actions{justify-content:stretch;flex-wrap:wrap}
  .meme-actions button{flex:1 1 auto;min-width:42%}
  .meme-urdu-toolbar{flex-direction:row;flex-wrap:wrap;gap:0.35rem}
  .meme-urdu-toolbar button{width:auto;flex:1 1 auto;min-width:40%}
  .meme-ctrl-row{flex-direction:column;align-items:stretch}
  .meme-ctrl-row label{min-width:0}
  .meme-size-row{grid-template-columns:3.8rem 1fr 2.4rem}
  .meme-wm-note{font-size:0.72rem}
}.tj-progress-bar{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;padding:0.85rem 1rem;margin-bottom:1rem;box-shadow:var(--shadow)}.tj-progress-bar .row{display:flex;justify-content:space-between;align-items:center;font-size:0.88rem;margin-bottom:0.4rem;flex-wrap:wrap;gap:0.35rem}.tj-progress-bar .track{height:0.55rem;border-radius:999px;background:var(--accent-soft);overflow:hidden}.tj-progress-bar .fill{height:100%;border-radius:999px;background:var(--accent);width:0%;transition:width 0.45s cubic-bezier(0.22,1,0.36,1)}.tj-lesson{display:flex;align-items:flex-start;gap:0.55rem;padding:0.45rem 0.35rem;border-bottom:1px solid rgba(0,0,0,0.05);font-size:0.92rem}.tj-lesson:last-child{border-bottom:none}.tj-lesson input[type="checkbox"]{width:1.05rem;height:1.05rem;margin-top:0.15rem;accent-color:var(--accent);flex-shrink:0;cursor:pointer}.tj-lesson.done label{text-decoration:line-through;opacity:0.72}.tj-lesson label{cursor:pointer;flex:1;line-height:1.4}.tj-lesson .tj-res{font-size:0.8rem;margin-top:0.2rem}.tj-lesson .tj-res a{color:var(--accent)}.tj-level-meta{display:flex;flex-wrap:wrap;gap:0.4rem;margin:0.5rem 0 0.75rem;font-size:0.78rem}.tj-badge{background:var(--accent-soft);color:var(--accent);padding:0.15rem 0.55rem;border-radius:999px;font-weight:600;border:1px solid var(--border)}.tj-badge.complete{background:#d0ecd8;color:#0f4c3a}html[data-theme="dark"] .tj-badge.complete{background:#1e3329;color:#8fd4a0}.tj-level-actions{margin-top:0.65rem;display:flex;flex-wrap:wrap;gap:0.4rem}.tj-level-actions button{margin:0;padding:0.4rem 0.75rem;font-size:0.82rem}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;transition-duration:0.01ms !important}}.one-action-strip{position:sticky;top:0;z-index:90;background:linear-gradient(135deg,var(--accent),var(--accent-light));color:var(--accent-fg);padding:0.55rem 0.9rem;display:flex;align-items:center;gap:0.65rem;flex-wrap:wrap;box-shadow:0 2px 10px rgba(0,0,0,0.12);font-size:0.9rem}.one-action-strip .oa-label{font-weight:700;font-size:0.72rem;text-transform:uppercase;letter-spacing:0.06em;opacity:0.9}.one-action-strip .oa-text{flex:1;min-width:140px;font-weight:500}.one-action-strip button{margin:0;padding:0.35rem 0.75rem;font-size:0.8rem;background:rgba(255,255,255,0.95);color:var(--accent);border-radius:999px}html[data-theme="dark"] .one-action-strip button{background:var(--bg-elevated);color:var(--accent)}.scholar-disclaimer{font-size:0.82rem;line-height:1.45;padding:0.65rem 0.85rem;border-radius:10px;background:rgba(15,76,58,0.08);border:1px solid var(--border);color:var(--text-muted);margin-bottom:0.85rem}html[data-theme="dark"] .scholar-disclaimer{background:rgba(61,155,114,0.12)}.weekly-review-card .wr-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0.55rem;margin:0.75rem 0}@media (min-width:520px){.weekly-review-card .wr-grid{grid-template-columns:repeat(4,1fr)}}.wr-item{background:rgba(255,255,255,0.7);border:1px solid var(--border);border-radius:12px;padding:0.65rem;text-align:center}html[data-theme="dark"] .wr-item{background:rgba(30,40,34,0.85)}.wr-item .wr-val{font-size:1.35rem;font-weight:700;color:var(--accent);display:block}.wr-item .wr-lab{font-size:0.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:0.04em}.seerah-timeline{border-left:3px solid var(--accent);margin:0.75rem 0 0.5rem 0.35rem;padding-left:1rem}.seerah-tl-item{position:relative;margin-bottom:0.95rem;padding-bottom:0.55rem}.seerah-tl-item::before{content:'';position:absolute;left:-1.28rem;top:0.35rem;width:0.55rem;height:0.55rem;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.seerah-tl-item .tl-year{font-size:0.78rem;font-weight:700;color:var(--accent);margin-bottom:0.15rem}.seerah-tl-item .tl-title{font-weight:600;font-size:0.95rem;margin-bottom:0.2rem}.seerah-tl-item .tl-body{font-size:0.88rem;color:var(--text-muted);line-height:1.45}.a11y-bar{display:inline-flex;flex-wrap:nowrap;gap:0.3rem;align-items:center;justify-content:flex-end;margin:0;width:auto;flex:0 0 auto;direction:ltr}.a11y-bar button{margin:0;padding:0.28rem 0.5rem;font-size:0.72rem;background:rgba(255,255,255,0.2);border:1px solid rgba(255,255,255,0.35);color:#fff;border-radius:999px;width:auto;flex:0 0 auto;white-space:nowrap}html.large-text{font-size:112%}html.xlarge-text{font-size:124%}.lang-select{background:rgba(255,255,255,0.18);color:#fff;border:1px solid rgba(255,255,255,0.4);border-radius:999px;padding:0.28rem 0.45rem;font-size:0.72rem;cursor:pointer;width:auto;max-width:5.5rem;flex:0 0 auto;direction:ltr}.lang-select option{color:#222}.night-breath-card{background:linear-gradient(145deg,#1a2a22,#0f1a14);color:#e8efe8;border-radius:16px;padding:1.2rem 1.15rem;margin-bottom:1.2rem;border:1px solid #2a3830}.night-breath-card h2{color:#8fd4a0 !important}.night-breath-card .nb-q{font-size:1.15rem;font-family:'Cormorant Garamond',serif;margin:0.65rem 0;line-height:1.4}.share-light-box{background:var(--accent-soft);border-radius:12px;padding:0.85rem;margin-top:0.65rem;font-size:0.9rem}.share-light-box textarea{min-height:70px;margin:0.45rem 0;font-size:0.88rem}.hadith-grade{display:inline-block;font-size:0.72rem;font-weight:700;padding:0.12rem 0.45rem;border-radius:6px;background:#d0ecd8;color:#0f4c3a;margin-left:0.35rem;vertical-align:middle}html[data-theme="dark"] .hadith-grade{background:#1e3329;color:#8fd4a0}.verse-audio-btn{background:var(--accent-soft) !important;color:var(--accent) !important;border:1px solid var(--border);font-size:0.86rem;padding:0.45rem 0.9rem !important}.card-about{background:linear-gradient(145deg,#e8f0e8,#f4f8f4);border:1px solid #a8c8b0}html[data-theme="dark"] .card-about{background:linear-gradient(145deg,#1a2820,#152018)}.sources-list{margin:0.5rem 0 0.75rem 1.1rem;font-size:0.92rem}.sources-list li{margin-bottom:0.35rem}.nav-tab[data-tab="about"]{background:linear-gradient(180deg,#5a7a6a,#3a5a4a)}.nav-tab.active[data-tab="notes"]{background:linear-gradient(180deg,#e8f5e0,#d4ecc8);color:#2a4a20;text-shadow:none}.nav-tab.active[data-tab="about"]{background:linear-gradient(180deg,#e0f0e8,#d0e8dc);color:#1a4a3a;text-shadow:none}.offline-badge{display:none;font-size:0.68rem;background:rgba(180,100,40,0.9);color:#fff;padding:0.15rem 0.45rem;border-radius:6px;margin-left:0.35rem}.offline-badge.show{display:inline-block}.install-pwa-btn{display:none;margin:0.5rem 0 0;font-size:0.85rem;padding:0.4rem 0.9rem}.install-pwa-btn.show{display:inline-block}html.lang-ur .verse-urdu,html.lang-ur .arabic-calligraphy,.verse-urdu{direction:rtl;text-align:right;unicode-bidi:isolate}html.lang-ur [data-i18n],html.lang-ur [data-i18n-html]{unicode-bidi:isolate}html.lang-ur .oa-label{letter-spacing:0}.family-tree{text-align:center;padding:0.5rem 0.25rem 0.25rem}.ft-node{display:inline-block;background:var(--bg-elevated,#fff);border:1px solid var(--border);border-radius:12px;padding:0.55rem 0.85rem;margin:0.2rem auto;font-weight:600;font-size:0.95rem;max-width:100%}.ft-root{border-color:var(--accent);color:var(--accent)}.ft-prophet{background:linear-gradient(135deg,var(--accent-soft),rgba(15,76,58,0.08));border-color:var(--accent);font-size:1.05rem;color:var(--accent)}.ft-as{font-weight:500;font-size:0.85rem;opacity:0.85}.ft-note{display:block;font-weight:400;font-size:0.78rem;color:var(--text-muted);margin-top:0.2rem;line-height:1.35}.uft-stage{position:relative;overflow-x:auto;overflow-y:visible;border-radius:16px;min-height:12rem;max-width:100%;min-width:0;box-sizing:border-box;padding:0.75rem 0.5rem 0.9rem;background:linear-gradient(160deg,#0f4c3a 0%,#1a2a22 100%);color:#f5f0e6;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.uft-stage[data-skin="navy"]{background:linear-gradient(160deg,#1a365d 0%,#0f172a 100%)}.uft-stage[data-skin="plum"]{background:linear-gradient(160deg,#4a1942 0%,#2d1028 100%)}.uft-stage[data-skin="earth"]{background:linear-gradient(160deg,#7c2d12 0%,#431407 100%)}.uft-stage[data-skin="teal"]{background:linear-gradient(160deg,#0e7490 0%,#164e63 100%)}.uft-stage[data-skin="olive"]{background:linear-gradient(160deg,#365314 0%,#1a2e05 100%)}.uft-stage[data-skin="charcoal"]{background:linear-gradient(160deg,#44403c 0%,#1c1917 100%)}.uft-stage[data-skin="parchment"]{background:linear-gradient(160deg,#f5f0e6 0%,#e7e0d4 100%);color:#1a1a1a}.uft-stage .uft-form label{color:inherit;opacity:0.92}.uft-stage .uft-form input,.uft-stage .uft-form textarea{background:rgba(255,255,255,0.12);color:inherit;border-color:rgba(255,255,255,0.28)}.uft-stage[data-skin="parchment"] .uft-form input,.uft-stage[data-skin="parchment"] .uft-form textarea{background:#fff;color:#1a1a1a;border-color:#d4c4a0}.uft-stage .uft-card{background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.28);color:inherit}.uft-stage[data-skin="parchment"] .uft-card{background:#fff;color:#1a1a1a;border-color:#d4c4a0}.uft-stage .uft-meta,.uft-stage .uft-empty{color:inherit;opacity:0.85}.uft-stage .uft-bg{opacity:0.35}.uft-bg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:0.55;z-index:0}.uft-bg .uft-branch{stroke:#5a3a1c;stroke-width:6;fill:none;stroke-linecap:round;transform-origin:200px 240px;animation:uftGrow 1.1s ease forwards}.uft-bg .uft-leaf{fill:url(#uftLeafA);opacity:0.75;animation:uftLeaf 3.6s ease-in-out infinite alternate}@keyframes uftGrow{from{stroke-dashoffset:220;opacity:0.2}to{stroke-dashoffset:0;opacity:1}}@keyframes uftLeaf{from{transform:translateY(0)}to{transform:translateY(-4px)}}.uft-wrap{margin-top:0.35rem;position:relative;z-index:1}.clarity-integrity{margin:0.5rem 0;padding:0.55rem 0.7rem;border-radius:10px;border:1px solid rgba(180,140,60,0.35);background:rgba(255,248,220,0.35);font-size:0.88rem}.clarity-integrity strong{color:#8a5a00}.uft-own-btn{display:inline-block !important;margin:0.18rem 0 0 0.15rem !important;font-size:0.62rem !important;padding:0.12rem 0.45rem !important;border-radius:999px !important;border:1px solid rgba(120,180,100,0.55) !important;background:rgba(80,140,70,0.35) !important;color:inherit !important;width:auto !important;cursor:pointer;font-weight:650}.uft-own-btn:hover{filter:brightness(1.15)}.uft-workspace-divider{display:flex;align-items:center;gap:0.65rem;margin:1rem 0 0.75rem;padding:0.35rem 0}.uft-workspace-divider::before,.uft-workspace-divider::after{content:'';flex:1;height:2px;background:linear-gradient(90deg,transparent,rgba(244,196,48,0.55),transparent)}.uft-workspace-divider span{font-size:0.72rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;opacity:0.9}.uft-branch-panel{border-radius:16px;border:1px solid rgba(244,196,48,0.35);background:rgba(0,0,0,0.18);padding:0.75rem 0.65rem 1rem;margin-bottom:0.5rem;min-height:6rem}.uft-branch-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0.45rem;margin-bottom:0.55rem}.uft-branch-bar button{margin:0;padding:0.28rem 0.7rem;font-size:0.75rem;border-radius:999px}.uft-branch-line{font-size:0.78rem;opacity:0.88;margin-bottom:0.55rem;text-align:center;line-height:1.4}.uft-branch-body{overflow-x:auto}.uft-nnode{display:flex;flex-direction:column;align-items:center;margin:0.15rem 0}.uft-nchildren{display:flex !important;flex-direction:column !important;flex-wrap:nowrap !important;align-items:center !important;justify-content:flex-start !important;gap:0.55rem !important;margin-top:0.45rem !important;padding-top:0.55rem !important;position:relative;width:100%}.uft-nchildren::before{content:'';position:absolute;top:0;left:50%;width:2px;height:0.55rem;transform:translateX(-50%);background:#7a9e5a;opacity:0.75}.uft-nbranch{display:flex;flex-direction:column;align-items:center;position:relative;padding-top:0.35rem;width:100%;max-width:16rem}.uft-nbranch::before{content:'';position:absolute;top:0;left:50%;width:2px;height:0.35rem;transform:translateX(-50%);background:#7a9e5a;opacity:0.55}.uft-living-root-label{display:inline-block;background:rgba(244,196,48,0.22);border:1px solid rgba(244,196,48,0.45);font-size:0.68rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;padding:0.15rem 0.5rem;border-radius:999px;margin-bottom:0.35rem}.clarity-integrity .uft-audit-list{list-style:none;margin:0.35rem 0 0;padding:0}.clarity-integrity .uft-audit-line{display:block;width:100%;text-align:left;margin:0.25rem 0;padding:0.45rem 0.6rem;border-radius:10px;border:1px solid rgba(180,140,60,0.4);background:rgba(255,255,255,0.55);color:inherit;font-size:0.86rem;line-height:1.35;cursor:pointer;transition:background 0.15s,border-color 0.15s,transform 0.12s}.clarity-integrity .uft-audit-line:hover{background:rgba(255,248,220,0.95);border-color:#b0892e;transform:translateX(2px)}.clarity-integrity .uft-audit-line{position:relative;padding-right:2.4rem}.clarity-integrity .uft-audit-dismiss{position:absolute;top:0.35rem;right:0.35rem;width:1.55rem;height:1.55rem;margin:0;padding:0;border-radius:999px;border:1px solid rgba(180,140,60,0.45);background:rgba(255,255,255,0.75);color:#8a5a00;font-size:0.95rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.clarity-integrity .uft-audit-dismiss:hover{background:#fde8c8}.clarity-integrity .uft-audit-line .uft-audit-action{display:block;font-size:0.72rem;opacity:0.8;margin-top:0.15rem;color:#8a5a00;font-weight:600}.uft-person.uft-audit-flash{box-shadow:0 0 0 3px rgba(176,137,46,0.85),0 8px 20px rgba(0,0,0,0.25) !important;animation:uftAuditPulse 1.2s ease 2}.uft-reg-row.uft-audit-flash{outline:2px solid #b0892e;background:rgba(255,248,220,0.7);animation:uftAuditPulse 1.2s ease 2}@keyframes uftAuditPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.12)}}html[data-theme="dark"] .clarity-integrity .uft-audit-line{background:rgba(40,36,24,0.75);border-color:rgba(212,168,75,0.4)}.uft-quick{display:inline-flex;gap:0.2rem;margin-top:0.25rem;flex-wrap:wrap}.uft-quick button{font-size:0.68rem;padding:0.12rem 0.35rem;border-radius:6px;cursor:pointer}.faraid-why{margin-top:0.35rem;padding:0.4rem 0.55rem;border-left:3px solid #2d6b38;background:rgba(45,107,56,0.06);font-size:0.82rem}.faraid-net{display:grid;grid-template-columns:1fr 1fr;gap:0.45rem;margin-top:0.5rem}@media (max-width:640px){.faraid-net{grid-template-columns:1fr}}.faraid-honest{border:1px solid rgba(180,60,60,0.35);background:rgba(255,240,240,0.5);padding:0.55rem 0.7rem;border-radius:10px;margin:0.5rem 0;font-size:0.86rem}.clarity-toolbar-amana{display:flex;flex-wrap:wrap;gap:0.4rem;margin:0.5rem 0;align-items:center}.uft-file-menus{display:flex;flex-wrap:wrap;gap:0.45rem;align-items:center;margin:0.35rem 0}.uft-file-menus label{display:flex;flex-direction:column;gap:0.15rem;font-size:0.78rem;opacity:0.9}.uft-file-menus select{min-width:11rem;max-width:100%}.uft-card-pick{grid-column:1 / -1}.uft-build-cards{grid-column:1 / -1;border:1px solid rgba(255,255,255,0.12);border-radius:12px;padding:0.65rem 0.75rem;margin-bottom:0.5rem;background:rgba(0,0,0,0.12)}.uft-build-cards h3{margin:0 0 0.35rem;font-size:0.95rem}.uft-build-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem 0.55rem}@media (max-width:640px){.uft-build-grid{grid-template-columns:1fr}}.uft-build-grid label{font-size:0.78rem;display:flex;flex-direction:column;gap:0.15rem}.uft-build-grid select{width:100%}.uft-build-actions{display:flex;flex-wrap:wrap;gap:0.35rem;margin-top:0.5rem}@media print{body.printing *{visibility:hidden !important}body.printing .print-sheet,body.printing .print-sheet *{visibility:visible !important}body.printing .print-sheet{position:absolute;left:0;top:0;width:100%;padding:1rem;display:block !important;background:#fff;color:#000}.no-print{display:none !important}}.print-sheet{display:none}body.printing .print-sheet{display:block}#tab-notes{width:100%;max-width:100%;margin:0;padding:0;box-sizing:border-box}#tab-notes.active>.fiqh-tool-card,#tab-notes.active>#wasiyyah-card,#tab-notes.active>#user-family-tree-card,#tab-notes.active>#faraid-card{display:block !important;width:100% !important;max-width:100% !important;min-width:0 !important;margin:0 0 1rem 0 !important;padding:1.1rem 1rem 1.2rem !important;box-sizing:border-box !important;border-radius:16px !important;overflow-x:auto !important;overflow-y:visible !important}#user-family-tree-card{overflow-x:auto !important;overflow-y:visible !important}#tab-notes>#faraid-card{margin-top:0.25rem !important}.fiqh-tool-card h2{font-size:1.4rem !important;margin:0 0 0.55rem 0 !important}#user-family-tree-card .uft-stage{display:block !important;width:100% !important;max-width:100% !important;min-width:0 !important;margin:0.35rem 0 0 !important;padding:0.55rem 0.4rem 0.65rem !important;box-sizing:border-box !important;overflow-x:auto !important;overflow-y:visible !important;border-radius:14px !important;min-height:11rem}#user-family-tree-card .uft-wrap,#user-family-tree-card .uft-tree-first,#user-family-tree-card .uft-chrome,#user-family-tree-card .uft-data-dock,#user-family-tree-card #uft-preview,#user-family-tree-card #uft-branch-wrap{width:100% !important;max-width:100% !important;min-width:0 !important;box-sizing:border-box !important}#user-family-tree-card .uft-stage{overflow-x:auto !important;overflow-y:visible !important;-webkit-overflow-scrolling:touch;scroll-padding-inline:1.25rem;overscroll-behavior-x:contain}#user-family-tree-card,#user-family-tree-card .uft-stage,#user-family-tree-card .uft-wrap,#user-family-tree-card .uft-tree-first,#user-family-tree-card #uft-preview{min-width:0 !important}#user-family-tree-card .uft-stage{display:block !important;width:100% !important;max-width:100% !important;overflow-x:auto !important;overflow-y:visible !important;-webkit-overflow-scrolling:touch;touch-action:manipulation;overscroll-behavior-x:contain;padding:0.55rem 0 !important}#user-family-tree-card #uft-preview{display:block !important;width:100% !important;max-width:100% !important;overflow-x:auto !important;overflow-y:visible !important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;scroll-snap-type:none;padding:0.35rem 1.75rem 0.75rem !important;box-sizing:border-box !important}#user-family-tree-card .uft-data-dock,#user-family-tree-card .uft-editor,#user-family-tree-card .uft-dock-body,#user-family-tree-card .uft-registry,#user-family-tree-card .uft-reg-section{touch-action:manipulation}#user-family-tree-card .uft-dtree,#user-family-tree-card .uft-vtree,#user-family-tree-card .uft-nnode{width:max-content !important;max-width:none !important;min-width:min(100%,20rem) !important;margin:0 auto !important;box-sizing:border-box !important}#user-family-tree-card #uft-preview::before,#user-family-tree-card #uft-preview::after{content:'';display:inline-block;width:0.5rem;height:1px}#user-family-tree-card #uft-preview{overflow-x:auto !important;overflow-y:visible !important;-webkit-overflow-scrolling:touch;scroll-padding-left:1.5rem;scroll-padding-right:1.5rem;padding-left:1.25rem !important;padding-right:1.25rem !important;justify-content:flex-start !important;align-items:center !important}#user-family-tree-card .uft-dtree,#user-family-tree-card .uft-vtree{margin-left:0.5rem !important;margin-right:0.5rem !important;padding-left:0.35rem !important;padding-right:0.35rem !important}#user-family-tree-card #uft-preview{overflow-x:auto !important;-webkit-overflow-scrolling:touch;display:block !important;min-height:8.5rem}#user-family-tree-card .uft-dtree,#user-family-tree-card .uft-vtree{width:max-content;min-width:min(100%,max-content);margin-left:auto !important;margin-right:auto !important;align-items:center !important;box-sizing:border-box}#user-family-tree-card .uft-nnode{align-items:center !important}#user-family-tree-card .uft-bg{width:100% !important;max-width:100% !important;left:0;right:0}#wasiyyah-card .faraid-net,#faraid-card .faraid-net,#wasiyyah-card input,#wasiyyah-card textarea,#wasiyyah-card select,#faraid-card input,#faraid-card textarea,#faraid-card select{width:100% !important;max-width:100% !important;box-sizing:border-box !important}.uft-person{gap:0.4rem !important;padding:0.45rem 0.55rem 0.5rem !important;min-height:2.8rem !important;border-radius:12px !important;width:12.5rem !important;max-width:14rem !important;min-width:11.5rem !important;flex-wrap:wrap;align-items:flex-start !important}.uft-person .uft-avatar{width:1.75rem !important;height:1.75rem !important;font-size:0.65rem !important}.uft-person .pn{font-size:0.8rem !important;line-height:1.25 !important}.uft-person .pd{font-size:0.66rem !important}.uft-person.rel{width:12rem !important;max-width:13.5rem !important;min-width:11rem !important;padding:0.4rem 0.5rem !important}.uft-dlimb .uft-person{width:12.5rem !important;max-width:14rem !important;min-width:11.5rem !important}.uft-nchildren{gap:0.5rem !important;margin-top:0.4rem !important;padding-top:0.5rem !important;flex-direction:column !important;align-items:center !important}.uft-nbranch{padding-top:0.3rem !important;width:100%;max-width:15rem}.uft-drow-inner{gap:0.4rem !important}.uft-dtree{gap:0.2rem !important;padding:0.2rem 0.75rem 0.4rem !important;margin:0.15rem auto 0.65rem !important;align-items:center !important}.uft-person{display:flex !important;flex-direction:row !important;flex-wrap:wrap !important;align-items:flex-start !important}.uft-person>div:not(.uft-avatar){flex:1 1 auto;min-width:0;width:calc(100% - 2.2rem)}.uft-person .uft-vital-row,.uft-person .uft-meta-row{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0.3rem !important;width:100% !important;margin-top:0.28rem !important}.uft-person .uft-vital-btn,.uft-person .uft-gender-btn,.uft-person .uft-born-btn,.uft-person .uft-focus-btn,.uft-person .uft-own-btn{width:100% !important;max-width:100% !important;box-sizing:border-box !important;text-align:center !important;margin:0 !important}.uft-person .uft-vital-row,.uft-person .uft-meta-row{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0.28rem !important;width:100%;margin-top:0.25rem}.uft-person .uft-vital-btn,.uft-person .uft-gender-btn,.uft-person .uft-born-btn{width:100% !important;text-align:center !important;box-sizing:border-box !important;font-size:0.62rem !important;padding:0.14rem 0.35rem !important}.uft-person .uft-quick{display:grid !important;grid-template-columns:1fr 1fr !important;gap:0.25rem !important;width:100%;margin-top:0.28rem}.uft-person .uft-quick button{width:100% !important;font-size:0.6rem !important;padding:0.12rem 0.25rem !important}.uft-person .uft-own-btn,.uft-person .uft-focus-btn{display:inline-block !important;width:calc(50% - 0.15rem) !important;text-align:center !important;box-sizing:border-box !important}.uft-focus-btn,.uft-own-btn,.uft-born-btn,.uft-vital-btn,.uft-gender-btn,.uft-quick button{font-size:0.55rem !important;padding:0.06rem 0.28rem !important}.uft-del-btn{width:1.1rem !important;height:1.1rem !important;font-size:0.7rem !important}@media (max-width:700px){#tab-notes>.fiqh-tool-card,#tab-notes>#wasiyyah-card,#tab-notes>#user-family-tree-card,#tab-notes>#faraid-card{padding:0.95rem 0.75rem 1.05rem !important;border-radius:14px !important}.page-wrapper{padding-left:0.45rem;padding-right:0.45rem}.main-content{max-width:100%}}.wasi-bq-row{display:grid;grid-template-columns:1.4fr 0.7fr 0.7fr auto;gap:0.35rem;align-items:end;margin-bottom:0.35rem}@media (max-width:560px){.wasi-bq-row{grid-template-columns:1fr 1fr}}#faraid-result{display:none}#faraid-result.is-on,#faraid-result[style*="display:block"],#faraid-result[style*="display:block"]{display:block !important}.faraid-result-body{display:block !important}.faraid-fiqh{margin-top:0.75rem;padding:0.65rem 0.75rem;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,0.45)}html[data-theme="dark"] .faraid-fiqh{background:rgba(30,40,34,0.75)}body.printing .print-sheet *{visibility:visible}.uft-titlebar{display:flex;flex-direction:column;gap:0.25rem;margin-bottom:0.75rem;padding:0.65rem 0.85rem;border-radius:14px;background:linear-gradient(135deg,rgba(15,76,58,0.12),rgba(244,196,48,0.08));border:1px solid rgba(15,76,58,0.18)}html[data-theme="dark"] .uft-titlebar{background:linear-gradient(135deg,rgba(61,155,114,0.14),rgba(244,196,48,0.06));border-color:rgba(255,255,255,0.1)}.uft-titlebar-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.45rem 0.75rem}.uft-titlebar h2{margin:0 !important;font-size:1.45rem;letter-spacing:0.02em}.uft-titlebar-sub{font-size:0.78rem;font-weight:600;color:var(--accent);opacity:0.9;background:rgba(15,76,58,0.1);padding:0.15rem 0.55rem;border-radius:999px}html[data-theme="dark"] .uft-titlebar-sub{background:rgba(61,155,114,0.2)}.uft-titlebar-desc{font-size:0.86rem;color:var(--text-muted);margin:0;line-height:1.45}.uft-dock-title-wrap{display:flex;flex-direction:column;gap:0.08rem;min-width:0}.uft-dock-title-wrap strong{font-size:1.02rem;letter-spacing:0.01em}.uft-dock-sub{font-size:0.72rem;font-weight:500;opacity:0.8}.uft-data-dock>.uft-dock-head{display:flex !important;justify-content:flex-start;align-items:center;gap:0.65rem;flex-wrap:wrap;padding:0.55rem 0.15rem 0.45rem;border-bottom:1px solid rgba(255,255,255,0.12);margin-bottom:0.35rem;direction:ltr;text-align:left}.uft-data-dock>.uft-dock-head .uft-dock-title-wrap{flex:1 1 auto;text-align:left;direction:ltr;order:1}.uft-data-dock>.uft-dock-head .uft-editor-toggle{margin-left:auto !important;order:2}.uft-stage[data-skin="parchment"] .uft-data-dock>.uft-dock-head{border-bottom-color:#d4c4a0}.uft-reg-actions{display:flex;flex-wrap:wrap;gap:0.4rem;margin:0.45rem 0 0.35rem;align-items:center}.uft-reg-actions button{margin:0 !important;padding:0.42rem 0.85rem !important;font-size:0.82rem !important;font-weight:600 !important;border-radius:10px !important;white-space:nowrap}.uft-reg-actions .btn-primary-reg{background:var(--accent) !important;color:#fff !important;border:none !important}.uft-reg-section-title{font-weight:700;font-size:0.92rem;margin:0.15rem 0 0.35rem;display:flex;align-items:center;gap:0.35rem}.uft-reg-section-title .uft-badge{font-size:0.68rem;font-weight:600;padding:0.12rem 0.4rem;border-radius:999px;background:rgba(15,76,58,0.15);color:var(--accent)}.uft-actions{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:0.45rem !important;margin:0.5rem 0 0.75rem !important}.uft-actions button{margin:0 !important;width:100%;justify-content:center;font-weight:600 !important;padding:0.55rem 0.75rem !important;border-radius:10px !important}.uft-registry{grid-column:1 / -1;background:rgba(255,255,255,0.10);border:1px solid rgba(255,255,255,0.22);border-radius:12px;padding:0.55rem 0.65rem 0.7rem;margin:0.15rem 0 0.35rem}.uft-stage[data-skin="parchment"] .uft-registry{background:#fff;border-color:#d4c4a0}.uft-reg-section{margin:0.55rem 0 0;border:1px solid var(--border,rgba(255,255,255,0.15));border-radius:12px;background:rgba(0,0,0,0.12);padding:0.15rem 0.55rem 0.55rem}.uft-stage[data-skin="parchment"] .uft-reg-section{background:#faf6ee;border-color:#d4c4a0}.uft-reg-section>summary{cursor:pointer;font-weight:650;font-size:0.88rem;padding:0.45rem 0.15rem;list-style:none;display:flex;align-items:center;gap:0.35rem}.uft-reg-section>summary::-webkit-details-marker{display:none}.uft-reg-section>summary::before{content:'▸';opacity:0.7;font-size:0.75rem}.uft-reg-section[open]>summary::before{content:'▾'}.uft-reg-new-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.4rem;margin-top:0.35rem}@media (max-width:560px){.uft-reg-new-grid{grid-template-columns:1fr}}.uft-loaded-standalone{margin:0.55rem 0 0.75rem;border:1px dashed rgba(244,196,48,0.35);border-radius:12px;background:rgba(0,0,0,0.1);padding:0.15rem 0.55rem 0.55rem}.uft-stage[data-skin="parchment"] .uft-loaded-standalone{background:#f7f3e8;border-color:#c4b48a}.uft-loaded-standalone:not([open]) .uft-reg-list{display:none}.uft-zoom-tools{display:inline-flex;align-items:center;gap:0.2rem;margin-left:0.45rem;vertical-align:middle}.uft-zoom-btn{min-width:2rem !important;padding:0.2rem 0.45rem !important;font-size:0.82rem !important;font-weight:700 !important;border-radius:999px !important;margin:0 !important}#uft-zoom-label{min-width:3.2rem !important;font-variant-numeric:tabular-nums}.uft-zoom-sizer{position:relative;display:block;width:max-content;min-width:100%;box-sizing:content-box;padding:1.25rem 2rem 2.25rem 2rem}.uft-zoom-layer{transform-origin:0 0;transition:transform 0.12s ease-out;width:max-content;min-width:0;margin:0;display:inline-block;vertical-align:top}#user-family-tree-card #uft-preview{overflow:auto !important;overflow-x:auto !important;overflow-y:auto !important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom !important;overscroll-behavior:contain;scroll-padding:1.5rem}#user-family-tree-card .uft-zoom-sizer,#user-family-tree-card .uft-zoom-layer{touch-action:pan-x pan-y pinch-zoom}.uft-loaded-search,.uft-pick-search{width:100%;box-sizing:border-box;margin:0.25rem 0 0.45rem;padding:0.45rem 0.65rem;border-radius:10px;border:1px solid rgba(255,255,255,0.28);background:rgba(0,0,0,0.2);color:inherit;font-size:0.9rem}html[data-theme="light"] .uft-loaded-search,.uft-stage[data-skin="parchment"] .uft-loaded-search{background:#fff;color:#1a1a1a;border-color:#c4b48a}.uft-reg-loaded-row[hidden],.uft-pick-item[hidden]{display:none !important}.uft-pick-modal{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,0.55);display:flex;align-items:flex-end;justify-content:center;padding:0.75rem;box-sizing:border-box}.uft-pick-modal[hidden]{display:none !important}.uft-pick-sheet{width:min(28rem,100%);max-height:min(78vh,36rem);background:var(--card,#1a2420);color:var(--text,#e8f0ea);border:1px solid var(--border,rgba(255,255,255,0.18));border-radius:16px 16px 12px 12px;box-shadow:0 -8px 40px rgba(0,0,0,0.45);display:flex;flex-direction:column;overflow:hidden}html[data-theme="light"] .uft-pick-sheet,.uft-stage[data-skin="parchment"] .uft-pick-sheet{background:#faf7ef;color:#1a1a1a;border-color:#d4c4a0}.uft-pick-head{padding:0.85rem 1rem 0.55rem;border-bottom:1px solid rgba(255,255,255,0.1)}.uft-pick-head strong{font-size:1.02rem;display:block}.uft-pick-head span{font-size:0.82rem;opacity:0.8}.uft-pick-search{margin:0.55rem 1rem 0.35rem;width:calc(100% - 2rem);padding:0.45rem 0.65rem;border-radius:10px;border:1px solid var(--border,rgba(255,255,255,0.2));background:rgba(0,0,0,0.15);color:inherit;font-size:0.95rem}.uft-pick-list{flex:1;overflow:auto;padding:0.25rem 0.55rem 0.55rem}.uft-pick-item{display:block;width:100%;text-align:left;padding:0.55rem 0.65rem;margin:0.2rem 0;border-radius:10px;border:1px solid transparent;background:rgba(255,255,255,0.05);color:inherit;cursor:pointer;font-size:0.9rem}.uft-pick-item:hover,.uft-pick-item:focus{border-color:rgba(244,196,48,0.45);background:rgba(244,196,48,0.12)}.uft-pick-item small{display:block;opacity:0.7;font-size:0.78rem;margin-top:0.15rem}.uft-pick-foot{padding:0.55rem 1rem 0.85rem;border-top:1px solid rgba(255,255,255,0.1);display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center}.uft-pick-foot input{flex:1 1 10rem;min-width:8rem;padding:0.4rem 0.55rem;border-radius:8px;border:1px solid var(--border,rgba(255,255,255,0.2));background:rgba(0,0,0,0.12);color:inherit}.uft-reg-loaded-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0.35rem;padding:0.4rem 0.45rem;margin:0.25rem 0;border-radius:10px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);font-size:0.86rem}.uft-registry>summary{cursor:pointer;font-weight:650;font-size:0.92rem}.uft-reg-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.35rem 0.45rem;margin-top:0.45rem}@media (max-width:640px){.uft-reg-grid{grid-template-columns:1fr}}.uft-reg-list{margin-top:0.5rem;display:flex;flex-direction:column;gap:0.35rem;max-height:16rem;overflow:auto}.uft-reg-row{display:grid;grid-template-columns:1fr auto;gap:0.35rem;align-items:start;background:rgba(255,255,255,0.10);border-radius:8px;padding:0.4rem 0.5rem;font-size:0.82rem}.uft-contact{font-size:0.68rem;opacity:0.9;margin-top:0.12rem;line-height:1.35}.uft-form{display:grid;grid-template-columns:1fr 1fr;gap:0.35rem 0.55rem;margin-bottom:0.45rem}@media (max-width:640px){.uft-form{grid-template-columns:1fr}}.uft-chrome{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center;margin:0 0 0.55rem;padding:0.35rem 0}.uft-tree-first{margin:0.25rem 0 0.85rem;min-height:10rem}.uft-data-dock{margin:1rem 0 0.5rem;padding:0.55rem 0.65rem 0.75rem;border-radius:14px;border:1px solid rgba(255,255,255,0.14);background:rgba(0,0,0,0.18)}.uft-stage[data-skin="parchment"] .uft-data-dock{background:rgba(255,255,255,0.55);border-color:#d4c4a0}.uft-data-dock>.uft-dock-head{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center;justify-content:space-between;margin-bottom:0.35rem}.uft-data-dock>.uft-dock-head strong{font-size:0.92rem;letter-spacing:0.01em}.uft-editor{margin-bottom:0.35rem}.uft-file-ops-standalone{margin:0.65rem 0.35rem 0.35rem;padding:0.35rem 0.55rem 0.55rem;border-radius:12px;border:1px solid rgba(255,255,255,0.18);background:rgba(0,0,0,0.22);color:inherit}.uft-file-ops-standalone>summary{cursor:pointer;font-weight:650;font-size:0.92rem;list-style:none;padding:0.35rem 0.15rem;color:inherit}.uft-file-ops-standalone>summary::-webkit-details-marker{display:none}.uft-file-ops-standalone>summary::before{content:"▸ ";opacity:0.7}.uft-file-ops-standalone[open]>summary::before{content:"▾ "}.uft-stage[data-skin="parchment"] .uft-file-ops-standalone{background:#f7f3e8;border-color:#c4b48a;color:#1a1a1a}.uft-file-ops-standalone .uft-actions{display:flex;flex-wrap:wrap;gap:0.35rem;margin:0.35rem 0}.uft-file-ops-standalone .uft-file-menus{margin-top:0.25rem}.uft-editor.collapsed .uft-form,.uft-editor.collapsed .uft-hint,.uft-editor.collapsed .uft-registry,.uft-editor.collapsed .uft-reg-section,.uft-editor.collapsed .uft-loaded-standalone,.uft-editor.collapsed .uft-actions,.uft-editor.collapsed .uft-file-menus,.uft-editor.collapsed .uft-save-row,.uft-editor.collapsed .uft-lib,.uft-editor.collapsed .uft-rel-add,.uft-editor.collapsed .uft-build-cards,.uft-editor.collapsed .uft-file-ops-section,.uft-editor.collapsed .uft-dock-body{display:none !important}.uft-editor:not(.collapsed) .uft-dock-body{display:block}.uft-dock-body{margin-top:0.45rem}.uft-dock-steps{display:flex;flex-wrap:wrap;gap:0.4rem;margin:0 0 0.75rem;font-size:0.8rem;justify-content:flex-start;align-items:center;direction:ltr;text-align:left;width:100%}.uft-dock-steps button.uft-step{margin:0 !important;padding:0.38rem 0.72rem !important;border-radius:999px !important;font-size:0.78rem !important;font-weight:700 !important;letter-spacing:0.01em;cursor:pointer;border:2px solid transparent !important;box-shadow:0 2px 8px rgba(0,0,0,0.18);transition:transform 0.12s ease,box-shadow 0.12s ease,filter 0.12s ease;color:#0a120e !important;line-height:1.2}.uft-dock-steps button.uft-step:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 4px 14px rgba(0,0,0,0.22)}.uft-dock-steps button.uft-step:active{transform:scale(0.97)}.uft-dock-steps button.uft-step.active-step{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 3px rgba(255,255,255,0.35),0 4px 16px rgba(0,0,0,0.28)}.uft-dock-steps button.uft-step[data-step="1"]{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;border-color:#2d8a5e !important;color:#f7f3eb !important}.uft-dock-steps button.uft-step[data-step="2"]{background:linear-gradient(135deg,#0e7490,#155e75) !important;border-color:#5eead4 !important;color:#f0fdfa !important}.uft-dock-steps button.uft-step[data-step="3"]{background:linear-gradient(135deg,#c9a227,#a07a35) !important;border-color:#e8d48b !important;color:#2a1f08 !important}.uft-dock-steps button.uft-step[data-step="4"]{background:linear-gradient(135deg,#3d7a35,#2a5a20) !important;border-color:#8fbf62 !important;color:#f7f3eb !important}.uft-dock-steps button.uft-step[data-step="5"]{background:linear-gradient(135deg,#8a3030,#6b1d1d) !important;border-color:#c9a06a !important;color:#faf6ef !important}.uft-stage[data-skin="parchment"] .uft-dock-steps button.uft-step{box-shadow:0 2px 6px rgba(0,0,0,0.12)}.uft-step-flash{animation:uftStepFlash 0.9s ease}@keyframes uftStepFlash{0%{box-shadow:0 0 0 0 rgba(255,255,255,0.55)}40%{box-shadow:0 0 0 6px rgba(255,255,255,0.25)}100%{box-shadow:none}}.uft-save-row{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center;margin:0.2rem 0 0.45rem}.uft-status{font-size:0.75rem;opacity:0.85}.uft-lib{display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center}.uft-lib select{min-width:10rem;padding:0.28rem 0.45rem;border-radius:8px}.uft-editor-toggle{margin:0 0 0.4rem !important;padding:0.32rem 0.75rem !important;font-size:0.78rem !important;border-radius:999px !important;background:rgba(255,255,255,0.16) !important;color:inherit !important;border:1px solid rgba(255,255,255,0.28) !important}.uft-stage[data-skin="parchment"] .uft-editor-toggle{background:#fff !important;color:#1a1a1a !important}.uft-form label{display:flex;flex-direction:column;gap:0.2rem;font-size:0.8rem;color:var(--text-muted)}.uft-form input,.uft-form select,.uft-form textarea{font:inherit;padding:0.4rem 0.55rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff);color:inherit}.uft-form textarea{min-height:2.2rem;resize:vertical;grid-column:1 / -1}.uft-actions{display:flex;flex-wrap:wrap;gap:0.4rem;margin:0.35rem 0 0.75rem}.uft-tree{display:flex;flex-direction:column;gap:0.55rem;min-height:12rem}#uft-preview{min-height:12rem}.uft-card{border:1px solid var(--border);border-radius:12px;padding:0.65rem 0.75rem;background:var(--bg-elevated,#fff)}.uft-card.uft-self{border-color:var(--accent)}.uft-name{font-weight:700}.uft-meta{font-size:0.82rem;color:var(--text-muted);margin-top:0.15rem}.uft-kids{margin-top:0.4rem;padding-left:0.75rem;border-left:2px solid var(--accent-soft,#cfe8dc)}.uft-empty{font-size:0.9rem;color:var(--text-muted)}.uft-view-bar{display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;margin:0.35rem 0 0.55rem}.uft-view-bar button{margin:0;padding:0.32rem 0.75rem;font-size:0.78rem;border-radius:999px;background:rgba(255,255,255,0.14);color:inherit;border:1px solid rgba(255,255,255,0.28)}.uft-stage[data-skin="parchment"] .uft-view-bar button{background:#fff;color:#1a1a1a;border-color:#d4c4a0}.uft-view-bar button.active{background:#f4c430 !important;color:#1a1a1a !important;border-color:#f4c430 !important;font-weight:700}.uft-pedigree-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0.35rem 0.15rem 0.6rem}.uft-backbone{display:flex;flex-direction:column;align-items:stretch;gap:0.35rem;overflow-x:auto;overflow-y:visible;padding:0.2rem 0.1rem 0.65rem;margin-bottom:0.35rem;border-bottom:1px solid rgba(255,255,255,0.14)}.uft-backbone .uft-col{width:max-content;min-width:16rem;max-width:none;display:flex;flex-wrap:nowrap;gap:0.35rem;align-items:flex-start;overflow:visible}.uft-backbone .uft-col-label{width:100%;flex:0 0 100%}.uft-backbone .uft-col{min-width:8.6rem;max-width:10.5rem}.uft-window{max-height:min(82vh,860px);overflow:auto;overflow-x:auto;overflow-y:auto;padding:0.45rem 0.4rem 0.7rem;border-radius:14px;background:rgba(0,0,0,0.16);border:1px solid rgba(255,255,255,0.08);-webkit-overflow-scrolling:touch}.uft-tree{overflow-x:auto}.uft-wrap{overflow-x:auto;max-width:100%}.uft-person{position:relative}.uft-stage[data-skin="parchment"] .uft-window{background:rgba(255,255,255,0.28);border-color:#d4c4a0}.uft-vtree,.uft-vtree ul{display:flex;justify-content:center;align-items:flex-start;padding-top:1.05rem;position:relative;margin:0;list-style:none;width:max-content;min-width:100%}.uft-vtree{padding-top:0.2rem}.uft-vtree ul::before{content:'';position:absolute;top:0;left:50%;border-left:2px solid rgba(244,196,48,0.65);height:1.05rem}.uft-vtree li{display:flex;flex-direction:column;align-items:center;position:relative;padding:1.05rem 0.55rem 0}.uft-vtree li::before,.uft-vtree li::after{content:'';position:absolute;top:0;width:50%;height:1.05rem;border-top:2px solid rgba(244,196,48,0.65)}.uft-vtree li::before{right:50%}.uft-vtree li::after{left:50%}.uft-vtree li:only-child::before,.uft-vtree li:only-child::after{display:none}.uft-vtree li:first-child::before{border:0}.uft-vtree li:last-child::after{border:0}.uft-vtree li:only-child{padding-top:0.55rem}.uft-vtree ul.uft-vline{flex-direction:column;align-items:center;justify-content:flex-start;padding-top:1.1rem;min-width:0;width:max-content}.uft-vtree ul.uft-vline::before{left:50%;height:1.1rem}.uft-vtree ul.uft-vline>li::before,.uft-vtree ul.uft-vline>li::after{display:none !important}.uft-vtree ul.uft-vline>li{padding-top:0.15rem}.uft-vtree ul.uft-vpeers{flex-direction:row}.uft-stage[data-skin="parchment"] .uft-vtree ul::before,.uft-stage[data-skin="parchment"] .uft-vtree li::before,.uft-stage[data-skin="parchment"] .uft-vtree li::after{border-color:#8a6a2a}.uft-dtree{width:max-content;min-width:100%;display:flex;flex-direction:column;align-items:center;gap:0.15rem;margin:0.2rem auto 1rem;padding:0.15rem 0.35rem 0.4rem}.uft-dgroup{display:flex;flex-direction:column;align-items:center;gap:0.28rem;padding:0.35rem 0.4rem 0.45rem;border:1px dashed rgba(244,196,48,0.35);border-radius:12px;width:max-content}.uft-dgroup-h{font-size:0.64rem;letter-spacing:0.04em;text-transform:uppercase;opacity:0.8}.uft-drow-inner{display:flex;flex-direction:column;flex-wrap:nowrap;align-items:center;gap:0.45rem}.uft-drow-inner.uft-peers-row{flex-direction:row;flex-wrap:wrap;justify-content:center}.uft-focus{margin-top:0.65rem;padding:0.55rem 0.65rem 0.75rem;border-radius:12px;background:rgba(0,0,0,0.28);border:1px solid rgba(244,196,48,0.35);overflow:auto;max-height:55vh}.uft-focus-bar{display:flex;justify-content:space-between;align-items:center;gap:0.5rem;margin-bottom:0.45rem}.uft-focus-bar button{margin:0;padding:0.25rem 0.7rem;font-size:0.78rem}.uft-focus-card{background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.22);border-radius:10px;padding:0.35rem 0.55rem;font-weight:650;text-align:center}.uft-focus-card small{font-weight:500;opacity:0.8}.uft-focus-btn{display:inline-block !important;margin:0.18rem 0 0 0.2rem !important;font-size:0.62rem !important;padding:0.1rem 0.4rem !important;border-radius:999px !important;border:1px solid rgba(244,196,48,0.45) !important;background:rgba(244,196,48,0.2) !important;color:inherit !important;width:auto !important;cursor:pointer}.uft-born-btn{display:inline-block !important;margin:0.18rem 0 0 0.2rem !important;font-size:0.62rem !important;padding:0.1rem 0.4rem !important;border-radius:999px !important;border:1px solid rgba(255,255,255,0.28) !important;background:rgba(255,255,255,0.14) !important;color:inherit !important;width:auto !important;cursor:pointer}.uft-dgen-label{font-size:0.66rem;letter-spacing:0.05em;text-transform:uppercase;opacity:0.7;margin:0.35rem 0 0.15rem}.uft-dgen{width:max-content;min-width:100%;display:flex;flex-direction:column;align-items:flex-start}.uft-dlabel{font-size:0.68rem;letter-spacing:0.06em;text-transform:uppercase;opacity:0.75;margin:0.15rem 0 0.35rem}.uft-dlimb{display:flex;flex-direction:column;align-items:center;width:max-content;min-width:10.5rem;max-width:none;flex:0 0 auto;position:relative}.uft-dlimb .uft-person{width:12.5rem;max-width:14rem;min-width:11.5rem}.uft-dcouple{display:flex;flex-wrap:nowrap;justify-content:center;gap:0.28rem;width:max-content}.uft-djoin{width:2px;height:0.85rem;background:rgba(255,255,255,0.35);flex:0 0 auto}.uft-stage[data-skin="parchment"] .uft-djoin{background:#c4b496}.uft-drow{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start;gap:1.1rem;width:max-content;padding:0.45rem 0.35rem 0.2rem;border-top:2px solid rgba(244,196,48,0.4)}.uft-col-wide{min-width:16rem !important;max-width:none !important;width:max-content !important}.uft-window{max-height:min(82vh,860px);overflow:auto;padding:0.45rem 0.55rem 0.8rem}.uft-window-meta{font-size:0.72rem;opacity:0.85;margin:0 0 0.45rem;letter-spacing:0.02em}.uft-band{margin-bottom:0.55rem}.uft-band.collapsed .uft-band-scroll{display:none}.uft-band-head{display:flex;justify-content:space-between;align-items:center;gap:0.5rem;width:100%;margin:0 0 0.35rem !important;padding:0.28rem 0.5rem !important;font-size:0.72rem !important;letter-spacing:0.06em;text-transform:uppercase;background:rgba(255,255,255,0.08) !important;border-radius:8px !important}.uft-stage[data-skin="parchment"] .uft-band-head{background:#fff !important;color:#1a1a1a !important}.uft-band-count{opacity:0.8;text-transform:none;letter-spacing:0}.uft-band-scroll{display:flex;flex-direction:column;align-items:center;gap:0.55rem;overflow-x:hidden;overflow-y:visible;padding:0.15rem 0.1rem 0.4rem;scroll-snap-type:none}.uft-window .uft-cluster{scroll-snap-align:start;flex:0 0 auto;width:min(100%,22rem);min-width:0;max-width:22rem}.uft-pedigree{display:flex;flex-direction:column;align-items:center;gap:0.55rem;min-width:0;width:100%}.uft-col{display:flex;flex-direction:column;justify-content:center;gap:0.45rem;min-width:9.4rem;max-width:11.5rem}.uft-col .uft-col-label{font-size:0.68rem;letter-spacing:0.04em;text-transform:uppercase;opacity:0.75;text-align:center;font-weight:700}.uft-pair{display:flex;flex-direction:column;gap:0.35rem;flex:1;justify-content:center}.uft-person{background:rgba(255,255,255,0.14);border:1px solid rgba(255,255,255,0.28);border-radius:10px;padding:0.4rem 0.5rem 0.45rem;display:flex;gap:0.4rem;align-items:center;min-height:3.1rem;box-shadow:0 1px 4px rgba(0,0,0,0.12)}.uft-stage[data-skin="parchment"] .uft-person{background:#fff;color:#1a1a1a;border-color:#d4c4a0}.uft-person.male{border-left:4px solid #3b82f6}.uft-person.female{border-left:4px solid #ec4899}.uft-person.focus{border-left-width:4px;border-left-color:#f4c430;box-shadow:0 0 0 1px rgba(244,196,48,0.45)}.uft-avatar{width:1.85rem;height:1.85rem;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0.72rem;font-weight:700;background:rgba(255,255,255,0.22)}.uft-person.male .uft-avatar{background:rgba(59,130,246,0.28)}.uft-person.female .uft-avatar{background:rgba(236,72,153,0.28)}.uft-person .pn{font-weight:700;font-size:0.82rem;line-height:1.25;word-break:break-word}.uft-person .pd{font-size:0.68rem;opacity:0.8;margin-top:0.08rem}.uft-person.alive{box-shadow:inset 0 0 0 1px rgba(74,222,128,0.45)}.uft-person.deceased{opacity:0.78}.uft-vital,.uft-vital-btn{display:inline-block !important;margin-top:0.18rem !important;font-size:0.68rem !important;letter-spacing:0.03em;text-transform:uppercase;font-weight:700;border-radius:999px;padding:0.12rem 0.5rem !important;border:0 !important;cursor:pointer;line-height:1.3;width:auto !important;min-height:0 !important}.uft-vital.live,.uft-vital-btn.live{color:#052e16 !important;background:#86efac !important}.uft-vital.dead,.uft-vital-btn.dead{color:#1a1a1a !important;background:#f4c430 !important}.uft-vital-btn.unset{color:#1a1a1a !important;background:#e7e0d4 !important}.uft-del-btn{position:absolute;top:0.15rem;right:0.15rem;width:1.25rem;height:1.25rem;padding:0 !important;margin:0 !important;border-radius:999px !important;border:0 !important;background:#8a3030 !important;color:#fff !important;font-size:0.95rem !important;line-height:1.15;cursor:pointer;z-index:2}.uft-del-btn:hover{background:#a33 !important}.uft-gender-btn{display:inline-block !important;margin:0.18rem 0 0 0.25rem !important;font-size:0.62rem !important;padding:0.1rem 0.4rem !important;border-radius:999px !important;background:rgba(255,255,255,0.2) !important;color:inherit !important;border:1px solid rgba(255,255,255,0.28) !important;width:auto !important;cursor:pointer}.uft-person.deceased{opacity:0.88;filter:grayscale(0.15)}.uft-stage[data-skin="parchment"] .uft-vital.live{color:#166534}.uft-stage[data-skin="parchment"] .uft-vital.dead{color:#92400e}.uft-vital-row{display:grid;grid-template-columns:1fr 8rem auto;gap:0.35rem;align-items:center;margin-top:0.4rem}.uft-person.empty{opacity:0.45;border-style:dashed}.uft-rel-add{display:grid;grid-template-columns:1fr 1fr;gap:0.35rem;margin-top:0.35rem;padding-top:0.45rem;border-top:1px dashed rgba(255,255,255,0.22)}@media (max-width:640px){.uft-rel-add{grid-template-columns:1fr}}.uft-rel-add select,.uft-rel-add input{font:inherit;padding:0.4rem 0.55rem;border-radius:8px;border:1px solid rgba(255,255,255,0.28);background:rgba(255,255,255,0.12);color:inherit;width:100%}.uft-rel-list{display:flex;flex-direction:column;gap:0.28rem;margin-top:0.4rem}.uft-rel-chip{display:flex;justify-content:space-between;gap:0.4rem;align-items:center;font-size:0.8rem;padding:0.28rem 0.45rem;border-radius:8px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2)}.uft-rel-chip button{margin:0;padding:0.15rem 0.4rem;font-size:0.72rem;background:#8a3030}.uft-offshoot{margin:0.2rem 0 0.15rem 0.55rem;padding-left:0.45rem;border-left:2px dashed rgba(244,196,48,0.55);display:flex;flex-direction:column;gap:0.25rem}.uft-linked{display:flex;flex-direction:column;gap:0.7rem}.uft-gen{display:flex;flex-wrap:wrap;gap:0.55rem;align-items:stretch}.uft-gen-title{width:100%;font-size:0.7rem;letter-spacing:0.08em;text-transform:uppercase;opacity:0.78;margin:0.15rem 0 0}.uft-cluster{background:rgba(0,0,0,0.2);border:1px solid rgba(255,255,255,0.16);border-radius:12px;padding:0.4rem 0.45rem 0.5rem;min-width:150px;flex:1 1 170px}.uft-stage[data-skin="parchment"] .uft-cluster{background:rgba(255,255,255,0.55);border-color:#d4c4a0}.uft-cluster.focus-cluster{box-shadow:inset 0 0 0 2px rgba(244,196,48,0.55)}.uft-couple{display:flex;gap:0.3rem;flex-wrap:wrap;justify-content:center}.uft-kids-row{display:flex;flex-wrap:wrap;gap:0.28rem;margin-top:0.38rem;padding-top:0.35rem;border-top:2px solid rgba(244,196,48,0.38);justify-content:center}.uft-link-note{font-size:0.66rem;opacity:0.82;text-align:center;margin-top:0.22rem;line-height:1.35}.uft-auto-tag{font-size:0.62rem;opacity:0.75;font-style:italic}.uft-person.rel{min-height:2.4rem;padding:0.28rem 0.4rem;opacity:0.95}.uft-person.rel .pn{font-size:0.75rem}.uft-person.rel .pd{font-size:0.64rem}.uft-connector{width:2px;align-self:center;position:relative;min-height:0.9rem;height:0.9rem}.uft-connector::before{content:'';position:absolute;left:50%;top:0;bottom:0;width:2px;height:auto;background:rgba(255,255,255,0.35)}.uft-stage[data-skin="parchment"] .uft-connector::before{background:#c4b496}.uft-group-sheet{display:grid;gap:0.55rem}.uft-group-block{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.22);border-radius:12px;padding:0.55rem 0.65rem}.uft-group-block h4{margin:0 0 0.35rem;font-size:0.82rem;letter-spacing:0.03em;text-transform:uppercase;opacity:0.8}.uft-hint{font-size:0.78rem;opacity:0.85;line-height:1.4;margin:0.15rem 0 0.45rem}.ft-line{width:2px;height:0.85rem;background:var(--accent);margin:0 auto;opacity:0.45}.ft-branch{display:flex;flex-wrap:wrap;gap:0.45rem;justify-content:center;margin:0.15rem 0}.ft-branch .ft-node{font-size:0.88rem}.seerah-tl-item{cursor:pointer}.seerah-tl-item .tl-more{display:none;margin-top:0.45rem;font-size:0.9rem;line-height:1.5;color:var(--text);padding:0.55rem 0.65rem;background:rgba(15,76,58,0.06);border-radius:10px}.seerah-tl-item.open .tl-more{display:block}.seerah-tl-item .tl-toggle{font-size:0.78rem;color:var(--accent);margin-top:0.25rem;font-weight:600}.seerah-tl-item .tl-online{font-size:0.82rem;color:var(--text-muted);margin-top:0.4rem;font-style:italic}.asma-box{background:var(--bg-elevated,#faf8f4);border:1px solid var(--border);border-radius:14px;padding:1rem 1.1rem}.asma-arabic{font-family:'Scheherazade New',Amiri,'Noto Naskh Arabic',serif;font-size:2rem;text-align:center;direction:rtl;color:var(--accent);margin-bottom:0.25rem;line-height:1.4}.asma-translit{text-align:center;font-weight:700;font-size:1.15rem;margin-bottom:0.2rem}.asma-meaning{text-align:center;color:var(--text-muted);font-size:0.95rem;margin-bottom:0.75rem}.asma-virtue{font-size:0.94rem;line-height:1.5;margin-bottom:0.5rem}.asma-ref{font-size:0.8rem;color:var(--text-muted);font-style:italic}.prophet-names-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:0.65rem}.prophet-name-card{margin-bottom:0}.meme-palette{display:flex;flex-wrap:wrap;align-items:center;gap:0.4rem;margin:0.35rem 0 0.55rem;padding:0.45rem 0.55rem;background:var(--bg-elevated,#faf8f4);border:1px solid var(--border);border-radius:10px}.meme-swatch{width:1.55rem;height:1.55rem;border-radius:50%;border:2px solid rgba(255,255,255,0.8);box-shadow:0 0 0 1px rgba(0,0,0,0.2);padding:0;margin:0;cursor:pointer;flex:0 0 auto}.meme-swatch:hover{transform:scale(1.12)}.ayah-audio-btn{background:var(--accent-soft) !important;color:var(--accent) !important;border:1px solid var(--border);font-size:0.82rem;padding:0.35rem 0.75rem !impo:root{--isl-green:#0f4c3a;--isl-green-mid:#1a6b52;--isl-green-soft:#2d8a5e;--isl-gold:#c9a227;--isl-gold-deep:#a07a35;--isl-gold-soft:#e8d48b;--isl-cream:#f7f3eb;--isl-parchment:#f5f0e6;--isl-teal:#0e7490;--isl-teal-deep:#155e75;--isl-navy:#1a365d;--isl-earth:#7c2d12;--isl-burgundy:#6b1d1d;--isl-burgundy-soft:#8a3030;--isl-ink:#1c241c;--isl-muted:#5a6358}#user-family-tree-card .uft-person{background:linear-gradient(145deg,rgba(247,243,235,0.16),rgba(15,76,58,0.22)) !important;border:1px solid rgba(232,212,139,0.35) !important;box-shadow:0 3px 12px rgba(0,0,0,0.16),inset 0 1px 0 rgba(255,255,255,0.12) !important}#user-family-tree-card .uft-person.male{border-left:4px solid #1a6b52 !important;background:linear-gradient(145deg,rgba(26,107,82,0.28),rgba(15,76,58,0.2)) !important}#user-family-tree-card .uft-person.female{border-left:4px solid #a07a35 !important;background:linear-gradient(145deg,rgba(200,160,90,0.2),rgba(15,76,58,0.18)) !important}#user-family-tree-card .uft-person.focus{border-left-color:var(--isl-gold) !important;box-shadow:0 0 0 2px rgba(201,162,39,0.5),0 5px 16px rgba(0,0,0,0.2) !important;background:linear-gradient(145deg,rgba(201,162,39,0.22),rgba(15,76,58,0.28)) !important}#user-family-tree-card .uft-person.alive{box-shadow:inset 0 0 0 1px rgba(45,138,94,0.5),0 3px 12px rgba(0,0,0,0.14) !important}#user-family-tree-card .uft-person.deceased{opacity:0.92;filter:none;background:linear-gradient(145deg,rgba(90,99,88,0.22),rgba(30,30,30,0.18)) !important;border-color:rgba(201,162,39,0.3) !important}#user-family-tree-card .uft-person.male .uft-avatar{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;font-weight:800}#user-family-tree-card .uft-person.female .uft-avatar{background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;font-weight:800}#user-family-tree-card .uft-person.focus .uft-avatar{background:linear-gradient(135deg,#e8d48b,#c9a227) !important;color:#2a1f08 !important}#user-family-tree-card .uft-vital-btn.live,#user-family-tree-card .uft-vital.live{background:linear-gradient(135deg,#2d8a5e,#0f4c3a) !important;color:#f7f3eb !important;border:1px solid #8fbf62 !important;box-shadow:0 2px 8px rgba(15,76,58,0.3)}#user-family-tree-card .uft-vital-btn.dead,#user-family-tree-card .uft-vital.dead{background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;border:1px solid #e8d48b !important;box-shadow:0 2px 8px rgba(160,122,53,0.3)}#user-family-tree-card .uft-vital-btn.unset{background:linear-gradient(135deg,#e5ddd0,#cfc6b6) !important;color:#1c241c !important;border:1px solid #d4c4a0 !important}#user-family-tree-card .uft-gender-btn.g-male{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;border:1px solid #5a9e4a !important;font-weight:700 !important}#user-family-tree-card .uft-gender-btn.g-female{background:linear-gradient(135deg,#c9a227,#8a6a2a) !important;color:#2a1f08 !important;border:1px solid #e8d48b !important;font-weight:700 !important}#user-family-tree-card .uft-gender-btn.g-unset{background:linear-gradient(135deg,#d4c4a0,#b8a88a) !important;color:#1c241c !important;border:1px solid #e5ddd0 !important;font-weight:700 !important}#user-family-tree-card .uft-born-btn{background:linear-gradient(135deg,#0e7490,#155e75) !important;color:#f0fdfa !important;border:1px solid #5eead4 !important;font-weight:700 !important;border-radius:999px !important}#user-family-tree-card .uft-born-btn.has-year{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;border-color:#8fbf62 !important;color:#f7f3eb !important}#user-family-tree-card .uft-focus-btn{background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;border:1px solid #e8d48b !important;font-weight:700 !important;border-radius:999px !important}#user-family-tree-card .uft-own-btn{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;border:1px solid #5a9e4a !important;font-weight:700 !important;border-radius:999px !important}#user-family-tree-card .uft-add-child-btn{background:linear-gradient(135deg,#2d8a5e,#1a6b52) !important;color:#f7f3eb !important;border:1px solid #8fbf62 !important;font-weight:700 !important;border-radius:8px !important}#user-family-tree-card .uft-add-spouse-btn{background:linear-gradient(135deg,#a07a35,#7c5a28) !important;color:#faf6ef !important;border:1px solid #e8d48b !important;font-weight:700 !important;border-radius:8px !important}#user-family-tree-card .uft-add-sib-btn{background:linear-gradient(135deg,#0e7490,#155e75) !important;color:#f0fdfa !important;border:1px solid #5eead4 !important;font-weight:700 !important;border-radius:8px !important}#user-family-tree-card .uft-del-btn{background:linear-gradient(135deg,#8a3030,#6b1d1d) !important;box-shadow:0 2px 6px rgba(107,29,29,0.35)}#user-family-tree-card .uft-vital-btn:hover,#user-family-tree-card .uft-gender-btn:hover,#user-family-tree-card .uft-born-btn:hover,#user-family-tree-card .uft-focus-btn:hover,#user-family-tree-card .uft-own-btn:hover,#user-family-tree-card .uft-add-child-btn:hover,#user-family-tree-card .uft-add-spouse-btn:hover,#user-family-tree-card .uft-add-sib-btn:hover{filter:brightness(1.06);transform:translateY(-1px)}#user-family-tree-card .uft-actions button:first-child,#user-family-tree-card .uft-reg-actions .btn-primary-reg,#user-family-tree-card button[onclick*="uftSave"]{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;border:1px solid #2d8a5e !important;font-weight:700 !important;box-shadow:0 3px 12px rgba(15,76,58,0.3)}#user-family-tree-card .uft-actions button.btn-secondary,#user-family-tree-card button[onclick*="uftRender"]{background:linear-gradient(135deg,#0e7490,#155e75) !important;color:#f0fdfa !important;border:1px solid #5eead4 !important;font-weight:700 !important}#user-family-tree-card .uft-actions button.btn-soft:nth-of-type(3),#user-family-tree-card button[onclick*="uftStartFresh"]{background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;border:1px solid #e8d48b !important;font-weight:700 !important}#user-family-tree-card .uft-actions button.btn-soft:nth-of-type(4),#user-family-tree-card button[onclick*="uftClear"]{background:linear-gradient(135deg,#8a3030,#6b1d1d) !important;color:#faf6ef !important;border:1px solid #c9a06a !important;font-weight:700 !important}#user-family-tree-card .uft-view-bar button.active{background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;border-color:#e8d48b !important;font-weight:800 !important}#user-family-tree-card .uft-zoom-btn{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;border:1px solid #2d8a5e !important;font-weight:800 !important}#user-family-tree-card .uft-reg-section>summary{border-radius:10px;padding:0.5rem 0.4rem !important}#user-family-tree-card #uft-registry-box>summary{background:linear-gradient(90deg,rgba(15,76,58,0.28),transparent);border-left:4px solid var(--isl-green)}#user-family-tree-card #uft-reg-loaded-section>summary{background:linear-gradient(90deg,rgba(201,162,39,0.22),transparent);border-left:4px solid var(--isl-gold)}#user-family-tree-card #uft-build-section>summary{background:linear-gradient(90deg,rgba(26,107,82,0.25),transparent);border-left:4px solid var(--isl-green-soft)}#user-family-tree-card #uft-manual-advanced>summary{background:linear-gradient(90deg,rgba(14,116,144,0.2),transparent);border-left:4px solid var(--isl-teal)}#user-family-tree-card .uft-titlebar{background:linear-gradient(135deg,rgba(15,76,58,0.16),rgba(201,162,39,0.1)) !important;border:1px solid rgba(201,162,39,0.28) !important;box-shadow:0 4px 16px rgba(0,0,0,0.1)}#user-family-tree-card .uft-titlebar-sub{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important}#user-family-tree-card .uft-band-head{background:linear-gradient(90deg,rgba(201,162,39,0.15),rgba(15,76,58,0.12)) !important;border:1px solid rgba(232,212,139,0.25)}.nav-tab[data-tab="journey"]{background:linear-gradient(180deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important}.nav-tab[data-tab="commands"]{background:linear-gradient(180deg,#2d8a5e,#1a6b52) !important;color:#f7f3eb !important}.nav-tab[data-tab="grave"]{background:linear-gradient(180deg,#3d7a35,#2a5a20) !important;color:#f7f3eb !important}.nav-tab[data-tab="seerah"]{background:linear-gradient(180deg,#c9a227,#a07a35) !important;color:#2a1f08 !important}.nav-tab[data-tab="tajweed"]{background:linear-gradient(180deg,#0e7490,#155e75) !important;color:#f0fdfa !important}.nav-tab[data-tab="tafseer"]{background:linear-gradient(180deg,#1a365d,#0f2444) !important;color:#e8eef8 !important}.nav-tab[data-tab="lectures"]{background:linear-gradient(180deg,#2a4a5a,#1a3040) !important;color:#e8eef8 !important}.nav-tab[data-tab="search"]{background:linear-gradient(180deg,#3a6b5a,#2a5a4a) !important;color:#f7f3eb !important}.nav-tab[data-tab="notes"]{background:linear-gradient(180deg,#5a7d3a,#3d5a28) !important;color:#f7f3eb !important}.nav-tab[data-tab="about"]{background:linear-gradient(180deg,#5a6358,#3d4540) !important;color:#f7f3eb !important}.nav-tab.active{box-shadow:0 -3px 14px rgba(0,0,0,0.18),0 0 0 1px rgba(232,212,139,0.4) !important}button,.btn{transition:filter 0.15s ease,transform 0.12s ease,box-shadow 0.15s ease !important}button:hover,.btn:hover{filter:brightness(1.05)}.btn-secondary{background:linear-gradient(135deg,#0e7490,#155e75) !important;color:#f0fdfa !important;border:none !important}.btn-soft{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important}.card-journey{background:linear-gradient(145deg,#d4f5e4,#e8fbf0) !important;border-color:#8fd4b0 !important}.card-commands{background:linear-gradient(145deg,#e0f0e8,#f0faf4) !important;border-color:#7ec9a4 !important}.card-grave{background:linear-gradient(145deg,#e4f0d4,#f0f7e6) !important;border-color:#a8c878 !important}.card-seerah,.card-life{background:linear-gradient(145deg,#f5e8d8,#faf2e8) !important;border-color:#e0c8a8 !important}.card-tajweed,.card-hifz{background:linear-gradient(145deg,#e0f5f0,#eefaf6) !important;border-color:#7ec9b0 !important}.card-tafseer{background:linear-gradient(145deg,#e8eef5,#f2f5fa) !important;border-color:#a8b8c8 !important}.card-lectures,.card-zikr{background:linear-gradient(145deg,#e8eeea,#f4f7f5) !important;border-color:#b0c0b8 !important}.card-search,.card-hadith{background:linear-gradient(145deg,#e4eef0,#f0f6f7) !important;border-color:#a8c5c8 !important}.card-lesson,.card-questions{background:linear-gradient(145deg,#f5ecd8,#faf6ec) !important;border-color:#e0c8a0 !important}.fiqh-tool-card{border-width:1px !important;box-shadow:0 6px 20px rgba(15,76,58,0.1) !important}#tab-notes .fiqh-tool-card,#tab-notes #fiqh-workflow-card,#tab-notes #user-family-tree-card,#tab-notes #faraid-card,#tab-notes #wasiyyah-card{border-width:1.5px !important;box-shadow:0 6px 20px rgba(15,76,58,0.1) !important}#tab-notes #fiqh-workflow-card{background:linear-gradient(145deg,#e8f5ec,#d4f0e0) !important;border-color:#2d8a5e !important}#tab-notes #fiqh-workflow-card h2{color:#0f4c3a !important}#tab-notes #fiqh-workflow-card .fiqh-flow-nav button:nth-child(1){background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important;border-color:#2d8a5e !important}#tab-notes #fiqh-workflow-card .fiqh-flow-nav button:nth-child(2){background:linear-gradient(135deg,#c9a227,#a07a35) !important;color:#2a1f08 !important;border-color:#e8d48b !important}#tab-notes #fiqh-workflow-card .fiqh-flow-nav button:nth-child(3){background:linear-gradient(135deg,#0e7490,#155e75) !important;color:#f0fdfa !important;border-color:#5eead4 !important}#tab-notes #user-family-tree-card{background:linear-gradient(160deg,rgba(61,122,53,0.12),rgba(15,76,58,0.08)) !important;border-color:#3d7a35 !important}#tab-notes #user-family-tree-card .uft-titlebar h2{color:#2a5a20 !important}#tab-notes #faraid-card{background:linear-gradient(145deg,#f8f0e0,#faf6ec) !important;border-color:#c9a227 !important}#tab-notes #faraid-card h2{color:#8a6a18 !important}#tab-notes #wasiyyah-card{background:linear-gradient(145deg,#e0f5f4,#eefaf8) !important;border-color:#0e7490 !important}#tab-notes #wasiyyah-card h2{color:#155e75 !important}#tab-notes .fiqh-tool-card .faraid-honest,#tab-notes .fiqh-tool-card .scholar-disclaimer{border-left:4px solid #8a3030;background:linear-gradient(90deg,rgba(138,48,48,0.08),transparent)}html[data-theme="dark"] #tab-notes #fiqh-workflow-card{background:linear-gradient(145deg,#0c241c,#0a1a14) !important;border-color:#2d8a5e !important}html[data-theme="dark"] #tab-notes #user-family-tree-card{background:linear-gradient(160deg,#0c1a14,#0f1612) !important;border-color:#3d7a35 !important}html[data-theme="dark"] #tab-notes #faraid-card{background:linear-gradient(145deg,#2a2210,#1a160c) !important;border-color:#c9a227 !important}html[data-theme="dark"] #tab-notes #wasiyyah-card{background:linear-gradient(145deg,#0c2428,#0a1a1c) !important;border-color:#0e7490 !important}#user-family-tree-card{background:linear-gradient(160deg,rgba(15,76,58,0.06),rgba(201,162,39,0.05)) !important;border:1px solid rgba(15,76,58,0.28) !important}#faraid-card{border-color:rgba(201,162,39,0.4) !important;background:linear-gradient(145deg,#f8f0e0,#faf6ec) !important}#wasiyyah-card{border-color:rgba(15,76,58,0.3) !important;background:linear-gradient(145deg,#e8f5ec,#f3faf5) !important}.deposit-item{background:linear-gradient(145deg,#e8f5ec,#d4f0e0) !important;border:1px solid #8fd4b0 !important;box-shadow:0 3px 12px rgba(15,76,58,0.08)}.deposit-item .count{color:#0f4c3a !important}.stat,.stat-pill{border-color:rgba(15,76,58,0.22) !important;box-shadow:0 2px 8px rgba(15,76,58,0.06)}.status-working{background:linear-gradient(135deg,#c8ecd8,#a8dcc0) !important;color:#0f4c3a !important}.visit-badge{background:linear-gradient(135deg,#e8f5ec,#d4f0e0) !important;border-color:#8fd4b0 !important;color:#0f4c3a !important}.mobile-bottom-nav .mb-tab.active{color:#0f4c3a !important;background:linear-gradient(180deg,rgba(26,107,82,0.18),transparent) !important}.mobile-bottom-nav{border-top:2px solid rgba(15,76,58,0.25) !important;box-shadow:0 -3px 16px rgba(0,0,0,0.08)}.live-haramain-btn{background:linear-gradient(135deg,#8a3030,#6b1d1d) !important;box-shadow:0 3px 10px rgba(107,29,29,0.3)}.live-haramain-btn.on{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important}.quran-stream-btn{background:linear-gradient(135deg,#f7f3eb,#e8d48b) !important;color:#0f4c3a !important;border:1px solid #c9a227 !important}.quran-stream-btn.playing{background:linear-gradient(135deg,#1a6b52,#0f4c3a) !important;color:#f7f3eb !important}html[data-theme="dark"] .card-journey{background:linear-gradient(145deg,#0c241c,#0a1a14) !important}html[data-theme="dark"] .card-commands{background:linear-gradient(145deg,#0e2820,#0a1c16) !important}html[data-theme="dark"] .card-grave{background:linear-gradient(145deg,#142414,#0c180c) !important}html[data-theme="dark"] .card-seerah,html[data-theme="dark"] .card-life{background:linear-gradient(145deg,#2a2210,#1a160c) !important}html[data-theme="dark"] .card-tajweed,html[data-theme="dark"] .card-hifz{background:linear-gradient(145deg,#0c2428,#0a1a1c) !important}html[data-theme="dark"] .card-tafseer{background:linear-gradient(145deg,#121c28,#0c1420) !important}html[data-theme="dark"] .card-lectures,html[data-theme="dark"] .card-zikr{background:linear-gradient(145deg,#141c18,#0e1412) !important}html[data-theme="dark"]
/* card-search always light unless dark theme */
.card-search{
  background:linear-gradient(145deg,#f7f4ec,#eef6f1) !important;
  border-color:#c5d4cb !important;
  color:#1a2420 !important;
}

html[data-theme="dark"] .card-search,html[data-theme="dark"] .card-hadith{background:linear-gradient(145deg,#101c1e,#0c1516) !important}html[data-theme="dark"] .card-lesson,html[data-theme="dark"] .card-questions{background:linear-gradient(145deg,#241c10,#18140c) !important}html[data-theme="dark"] #faraid-card{background:linear-gradient(145deg,#2a2210,#1a160c) !important}html[data-theme="dark"] #wasiyyah-card{background:linear-gradient(145deg,#0c241c,#0a1a14) !important}html[data-theme="dark"] #user-family-tree-card{background:linear-gradient(160deg,#0c1a14,#0f1612) !important;border-color:rgba(201,162,39,0.25) !important}#user-family-tree-card .uft-stage{animation:none;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(201,162,39,0.12)}ease-in-out infinite;border-radius:16px}

#tab-search .card{background:var(--card-bg);color:var(--text);border:1px solid var(--border);border-radius:16px}
#tab-search .card h2{color:var(--accent)}
#tab-search .card-questions{border-top:4px solid #1a6b52}
#tab-search .card-search:has(#dua-search){border-top:4px solid #c9a227}
#tab-search .card-search:has(#quran-search){border-top:4px solid #2d6a4f}
#tab-search .card-search:has(#hadith-search){border-top:4px solid #7b5ea7}
#tab-search .card-search:has(#life-search){border-top:4px solid #3a7ca5}
#tab-search .card-grok{border-top:4px solid #5a4a90}
[data-theme="light"] #tab-search .card-questions{background:linear-gradient(165deg,#f0f7f3,#e6f0ea)}
[data-theme="dark"] #tab-search .card{background:var(--bg-elevated,#162019);color:var(--text,#e8efe8);border-color:var(--border,#2a3830)}
[data-theme="dark"] #tab-search .card h2{color:#7dcea0}
[data-theme="dark"] #tab-search .search-row input{background:#0f1612;color:#e8efe8;border-color:#2a3830}
#tab-search .question{cursor:pointer;padding:0;margin:.4rem 0;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated,var(--card-bg));overflow:hidden}
#tab-search .question>strong{display:block;color:var(--text);font-size:.94rem;padding:.7rem .85rem}
#tab-search .question>strong::before{content:'▸ ';opacity:.65}
#tab-search .question.open>strong::before{content:'▾ '}
#tab-search .question .answer{display:none;margin:0;padding:.65rem .85rem .8rem;border-top:1px solid var(--border);background:rgba(15,76,58,.07)}
#tab-search .question .answer.show{display:block}
#tab-search .question .answer p{color:var(--text);font-size:.9rem;line-height:1.55;margin:0 0 .3rem}
#tab-search .question .ref{font-size:.78rem;color:var(--text-muted,#6a7a6e)}
#tab-search .question .answer a{color:var(--accent);font-weight:500}
[data-theme="dark"] #tab-search .question{background:#152019;border-color:#2a3830}
[data-theme="dark"] #tab-search .question>strong{color:#e8efe8}
[data-theme="dark"] #tab-search .question .answer{background:#1a2820;border-top-color:#2a3830}
[data-theme="dark"] #tab-search .question .answer p{color:#d5ddd6}
[data-theme="dark"] #tab-search .question .answer a{color:#7dcea0}
[data-theme="dark"] .hajj-panel{background:#f4f0e6!important;color:#1e2a22!important}

/* —— Clarity spiritual palette revamp —— */
html{scroll-behavior:smooth}
[data-theme="dark"] body{
  background:linear-gradient(180deg,#0c1410 0%,#101a15 100%)!important;
  background-color:var(--bg)!important;
}
[data-theme="dark"] body::before{background:rgba(8,14,11,0.72)!important}
.card h2,.card h3{font-family:'Cormorant Garamond','Inter',serif;color:var(--accent);letter-spacing:.01em}
.card a{color:var(--accent)}
.deep-learn{
  margin-top:.75rem;padding:.7rem .85rem;border-radius:12px;
  border:1px solid rgba(13,79,60,.18);
  background:linear-gradient(135deg,rgba(13,79,60,.07),rgba(184,146,42,.08));
  font-size:.86rem;line-height:1.5;color:var(--text);
}
.deep-learn strong{color:var(--accent);display:block;margin-bottom:.25rem}
.deep-learn a{margin-right:.35rem;font-weight:600}
[data-theme="dark"] .deep-learn{
  background:linear-gradient(135deg,rgba(76,175,130,.12),rgba(212,180,90,.08));
  border-color:rgba(76,175,130,.28);color:var(--text);
}
/* Tab-specific soft accents */
#tab-journey .card{border-top:3px solid var(--accent)}
#tab-seerah .card{border-top:3px solid var(--gold)}
#tab-tajweed .card{border-top:3px solid #2d8a6e}
#tab-tafseer .card{border-top:3px solid var(--accent)}
#tab-lectures .card{border-top:3px solid #7a5a9a}
#tab-commands .card{border-top:3px solid #1a6b52}
#tab-grave .card{border-top:3px solid #3d6b52}
#tab-about .card{border-top:3px solid var(--sky)}
#tab-notes .card{border-top:3px solid #4a7c59}
/* Nav tabs — calmer, consistent */
.nav-tab{border-radius:10px 10px 0 0}
.nav-tab.active{filter:brightness(1.05)}
/* Buttons */
button,.btn-secondary{
  transition:background .15s,transform .12s,box-shadow .15s;
}
button:active{transform:scale(0.98)}
/* Search rows */
.search-row input{
  background:var(--bg-elevated);color:var(--text);border:1px solid var(--border);
  border-radius:10px;padding:.45rem .65rem;
}
.search-row button{
  background:var(--accent);color:var(--accent-fg);border:none;border-radius:10px;
  padding:.45rem .85rem;font-weight:600;cursor:pointer;
}
[data-theme="dark"] .search-row button{color:#0a120e}
/* Resource chip row */
.res-stack{display:flex;flex-wrap:wrap;gap:.35rem;margin:.4rem 0 .2rem}
.res-stack a{
  font-size:.75rem;padding:.2rem .5rem;border-radius:999px;
  border:1px solid var(--border);background:var(--accent-soft);color:var(--accent);
  text-decoration:none;font-weight:600;
}
[data-theme="dark"] .res-stack a{background:var(--accent-soft);color:var(--accent-light);border-color:var(--border)}
/* Footer-ish about resources */
.clarity-resources{
  margin-top:1rem;padding:1rem;border-radius:14px;
  border:1px solid var(--border);background:var(--gold-soft);
}
[data-theme="dark"] .clarity-resources{background:var(--gold-soft);border-color:var(--border)}
.clarity-resources h3{color:var(--accent);margin:0 0 .5rem;font-family:'Cormorant Garamond',serif}
.clarity-resources ul{margin:.25rem 0 0 1.1rem;font-size:.88rem;line-height:1.55}

/* Journey readability — no white-wash */
#tab-journey .card{
  background:var(--card-bg)!important;
  color:var(--text)!important;
  border:1px solid var(--border)!important;
}
#tab-journey .card p,
#tab-journey .card .ref,
#tab-journey .loading-msg{color:var(--text-muted,#5c6b62)}
#tab-journey .ponder-box{
  background:var(--accent-soft,rgba(13,79,60,.08));
  border-left:3px solid var(--accent);
  color:var(--text);
  padding:.55rem .75rem;
  border-radius:0 10px 10px 0;
  margin:.45rem 0;
}
#tab-journey .story-title{color:var(--accent);font-weight:700}
#tab-journey .deep-learn,
#tab-journey .res-stack a{
  background:var(--accent-soft,rgba(13,79,60,.08));
}
[data-theme="dark"] #tab-journey .card{
  background:var(--bg-elevated,#152019)!important;
  color:var(--text,#e7efe9)!important;
  border-color:var(--border,#2a3830)!important;
}
[data-theme="dark"] #tab-journey .ponder-box{
  background:rgba(76,175,130,.1);
  color:var(--text);
}
[data-theme="dark"] #tab-journey .loading-msg{color:#9aab9f}
[data-theme="dark"] #tab-journey .deep-learn{
  background:rgba(76,175,130,.12);
  border-color:rgba(76,175,130,.28);
}
/* Light mode: soft parchment not pure white */
[data-theme="light"] #tab-journey .card,
:root:not([data-theme="dark"]) #tab-journey .card{
  background:linear-gradient(165deg,#fbf8f1,#f3efe6)!important;
}
[data-theme="light"] .clarity-resources,
:root:not([data-theme="dark"]) .clarity-resources{
  background:linear-gradient(165deg,#f5edd6,#efe6cc)!important;
  color:var(--text);
}

#hajj-checklist-list .hcl-item{
  display:flex;align-items:flex-start;gap:.55rem;padding:.55rem .7rem;
  border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated,var(--card-bg));
  cursor:pointer;
}
#hajj-checklist-list .hcl-item.done{opacity:.85;border-color:var(--accent)}
#hajj-checklist-list .hcl-item.done .hcl-title{text-decoration:line-through;color:var(--text-muted)}
#hajj-checklist-list .hcl-check{
  flex:0 0 1.25rem;height:1.25rem;border-radius:6px;border:2px solid var(--accent);
  display:flex;align-items:center;justify-content:center;font-size:.75rem;margin-top:.1rem;
  background:transparent;color:var(--accent);
}
#hajj-checklist-list .hcl-item.done .hcl-check{background:var(--accent);color:var(--accent-fg,#fff)}
#hajj-checklist-list .hcl-title{font-weight:600;color:var(--text);font-size:.92rem}
#hajj-checklist-list .hcl-meta{font-size:.78rem;color:var(--text-muted);margin-top:.15rem}
#hajj-checklist-progress .hcl-bar{
  height:8px;border-radius:999px;background:var(--border);overflow:hidden;margin-top:.35rem
}
#hajj-checklist-progress .hcl-bar>span{display:block;height:100%;background:var(--accent);border-radius:999px}

#traffic-stats-card details[open] #traffic-summary-chevron{display:inline-block;transform:rotate(90deg)}
#traffic-stats-body .tr-row{display:grid;grid-template-columns:7.5rem 1fr 3.2rem;gap:.4rem;align-items:center;margin:.28rem 0;font-size:.86rem}
#traffic-stats-body .tr-label{color:var(--text);font-weight:600}
#traffic-stats-body .tr-bar-wrap{height:10px;border-radius:999px;background:var(--border);overflow:hidden}
#traffic-stats-body .tr-bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),var(--gold,#b8922a));min-width:2px}
#traffic-stats-body .tr-val{text-align:right;color:var(--text-muted);font-variant-numeric:tabular-nums}
#traffic-stats-card summary::-webkit-details-marker{display:none}

/* Notes-only blocks rely on tab-panel visibility */

/* FAIL-SAFE about-gates NUKED — RRRA5 hubs own visibility */

/* Clarity Meme Atelier — compact */

#meme-stage{position:relative}
.meme-audio-fab{
  position:absolute;left:10px;bottom:10px;z-index:8;
  display:inline-flex;align-items:center;gap:.35rem;
  background:rgba(15,76,58,.92);color:#fff;border:1px solid rgba(255,255,255,.28);
  border-radius:999px;padding:.42rem .75rem;font-size:.78rem;font-weight:700;
  cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.28);margin:0;
}
.meme-audio-fab[data-playing="1"]{background:#8a3030}
.meme-audio-fab .fab-dot{width:.45rem;height:.45rem;border-radius:50%;background:#7dff9a;box-shadow:0 0 0 0 rgba(125,255,154,.7);animation:livePulse 1.4s ease-out infinite}
.meme-audio-fab[data-playing="0"] .fab-dot{display:none}
#meme-hear-btn.playing{background:#8a3030;color:#fff}
.meme-audio-status{font-size:.72rem;color:var(--text-muted);margin:.25rem 0 0}
#meme-card{border-top:3px solid var(--gold,#b8922a)}
#meme-card .meme-studio{display:grid;gap:0.55rem}
@media(min-width:900px){
  #meme-card .meme-studio{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}
}
#meme-card .meme-toolbar{
  display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;
  padding:0.45rem;border-radius:12px;border:1px solid var(--border);
  background:var(--bg-elevated,rgba(15,76,58,0.06));
}
#meme-card .meme-toolbar select,
#meme-card .meme-toolbar button,
#meme-card .meme-upload-btn{
  font-size:0.78rem;padding:0.32rem 0.5rem;border-radius:9px;border:1px solid var(--border);
  background:var(--card-bg);color:var(--text);line-height:1.2
}
#meme-card .meme-upload-btn{cursor:pointer;font-weight:600;background:var(--accent-soft,rgba(15,76,58,.12));color:var(--accent);border:1px solid var(--border)}
#meme-btn-surprise{
  order:-1;flex:1 1 100%;
  padding:0.7rem 1rem!important;font-size:1rem!important;font-weight:800!important;
  border:none!important;border-radius:12px!important;cursor:pointer;
  background:linear-gradient(135deg,#0d4f3c,#1a6b52 55%,#b8922a)!important;
  color:#fff!important;letter-spacing:.02em;
  box-shadow:0 4px 14px rgba(13,79,60,.35);
}
#meme-btn-surprise:active{transform:scale(0.98)}
#meme-stage-wrap{position:relative;border-radius:12px;overflow:hidden;border:1px solid var(--border);
  box-shadow:0 6px 20px rgba(0,0,0,0.16);background:#0a1210;max-width:100%}
#meme-stage canvas,#meme-canvas{width:100%;height:auto;display:block}
/* Invisible hit-target over baked watermark — preview matches download PNG */

/* Clickable strip over canvas watermark — must stay tappable (iOS ignores opacity:0) */
#meme-stage-wrap,.meme-stage-wrap{position:relative;}
#meme-canvas{pointer-events:none;}
#meme-wm-link{
  position:absolute;left:0;right:0;bottom:0;z-index:200 !important;
  height:12%;min-height:36px;max-height:56px;
  display:flex;align-items:center;justify-content:center;
  text-decoration:none;border:0;padding:0;margin:0;
  cursor:pointer;pointer-events:auto !important;
  background:transparent;
  -webkit-tap-highlight-color:rgba(232,212,139,0.4);
}
#meme-wm-link .wm-hit-label{
  font-size:0.68rem;font-weight:700;color:rgba(232,212,139,0.85);
  pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,0.6);
  letter-spacing:0.02em;
}
#meme-stage .meme-text-box.bottom{z-index:40 !important;max-height:45%;}
#meme-stage .meme-text-box{z-index:30;}
#meme-stage canvas{position:relative;z-index:1;display:block;width:100%;height:auto;}

#meme-wm-link:hover,
#meme-wm-link:focus{
  background:rgba(232,212,139,0.15);
  outline:2px solid rgba(232,212,139,0.4);
  outline-offset:-2px;
}
#meme-wm-link .wm-hit-label{
  /* Canvas already draws the mark — hide DOM text to prevent double watermark */
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
  pointer-events:none;
  color:transparent;
  font-size:0;
}
.meme-text-box{z-index:5;}
.meme-text-box.bottom{z-index:5; bottom:14%;}
.meme-wm-note{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:0.35rem;
  margin:0.4rem 0 0;font-size:0.78rem;color:var(--text-muted);
}
.meme-wm-note a{color:var(--accent);font-weight:600;text-decoration:none}
.meme-wm-note a:hover{text-decoration:underline}
#meme-card .meme-dock{display:grid;gap:0.4rem}
#meme-card textarea{min-height:2.6rem;font-size:0.88rem}
#meme-card .meme-actions-row{display:flex;flex-wrap:wrap;gap:0.35rem;justify-content:flex-end}

/* Meme Studio compact workbench */
.meme-studio-compact .meme-toolbar-primary{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.55rem}
.meme-studio-compact #meme-btn-surprise{
  flex:1 1 100%;padding:.75rem 1rem!important;font-size:1.05rem!important;font-weight:800!important;
  border:none!important;border-radius:12px!important;cursor:pointer;
  background:linear-gradient(135deg,#0d4f3c,#1a6b52 50%,#b8922a)!important;color:#fff!important;
}
.meme-workbench{display:grid;gap:.55rem}
@media(min-width:900px){
  .meme-workbench{grid-template-columns:7.5rem minmax(0,1.1fr) minmax(14rem,0.95fr);align-items:start}
  .meme-scene-rail{flex-direction:column}
}
.meme-scene-rail{display:flex;flex-wrap:wrap;gap:.3rem;align-content:start}
.meme-rail-label{width:100%;font-size:.72rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}
.meme-scene-chip,.meme-upload-chip{
  font-size:.72rem;padding:.32rem .45rem;border-radius:9px;border:1px solid var(--border);
  background:var(--bg-elevated,var(--card-bg));color:var(--text);cursor:pointer;font-weight:600;
  display:inline-flex;align-items:center;gap:.2rem;
}
.meme-upload-chip{margin:0}
.meme-scene-chip .meme-use-count{opacity:.7;font-weight:500}
.meme-dock{display:flex;flex-direction:column;gap:.4rem}
.meme-dock-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.meme-dock select{font-size:.78rem;padding:.32rem .4rem;border-radius:8px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);max-width:100%}
.meme-field{display:flex;flex-direction:column;gap:.15rem;font-size:.75rem;font-weight:600;color:var(--text-muted)}
.meme-field textarea{font-weight:400;font-size:.88rem;border-radius:10px;border:1px solid var(--border);padding:.4rem .5rem;background:var(--card-bg);color:var(--text);resize:vertical;min-height:2.4rem}
.meme-studio-compact .meme-stage-wrap{border-radius:12px;overflow:hidden;border:1px solid var(--border);background:#0a1210}

/* Meme preview — force visible canvas */
#meme-card .meme-studio.meme-studio-compact{
  display:block !important;
  grid-template-columns:none !important;
}
#meme-card .meme-workbench{
  display:grid !important;
  gap:0.55rem;
  grid-template-columns:1fr;
}
@media(min-width:900px){
  #meme-card .meme-workbench{
    grid-template-columns:7.2rem minmax(0,1.15fr) minmax(13rem,0.9fr);
    align-items:start;
  }
}
#meme-card:not([data-gate-hidden="1"]) .meme-stage-wrap, #tab-about.active #meme-stage-wrap {
  display:block !important;
  visibility:visible !important;
  width:100% !important;
  min-height:220px !important;
  max-width:100% !important;
  overflow:hidden !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#0a1210 !important;
  position:relative !important;
}
#meme-card:not([data-gate-hidden="1"]) .meme-stage, #tab-about.active #meme-stage {
  display:block !important;
  position:relative !important;
  width:100% !important;
  max-width:800px !important;
  margin:0 auto !important;
  aspect-ratio:unset !important;
  min-height:200px !important;
  background:#1a1a1a !important;
  height:auto !important;
}
#meme-card #meme-canvas,
#meme-canvas{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:contain;
  background:#1a1a1a;
  pointer-events:none;
}
#meme-card .meme-text-box{
  position:absolute;left:50%;transform:translateX(-50%);
  z-index:30;pointer-events:auto;
}

#callig-canvas{touch-action:none;-webkit-user-select:none;user-select:none;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%230d4f3c' d='M3 21l3.5-1 11-11-2.5-2.5-11 11L3 21z'/%3E%3Ccircle cx='16.5' cy='7.5' r='1.8' fill='%23b8922a'/%3E%3C/svg%3E") 2 22, crosshair}
.callig-lab-stage{touch-action:none;position:relative;border-radius:14px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(13,79,60,.12),0 8px 28px rgba(13,50,40,.08)}
.callig-lab-stage::after{content:'';pointer-events:none;position:absolute;inset:0;background:radial-gradient(ellipse at 30% 20%,rgba(255,255,255,.35),transparent 55%),repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(13,79,60,.04) 39px,rgba(13,79,60,.04) 40px);z-index:1}
.callig-lab-stage canvas{position:relative;z-index:2}
.callig-stylus-hint{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:.78rem;color:var(--text-muted);margin:.35rem 0 .15rem;padding:.4rem .65rem;border-radius:10px;background:linear-gradient(135deg,rgba(15,76,58,.07),rgba(184,146,42,.08));border:1px solid rgba(15,76,58,.12)}
.callig-stylus-hint strong{color:var(--accent)}
.callig-mode-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:.12rem .45rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid var(--border)}
.callig-panel-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:flex-end;margin-bottom:.4rem}
.callig-lab-label{display:flex;flex-direction:column;gap:.15rem;font-size:.72rem;font-weight:600;color:var(--text-muted)}
.callig-lab-label select,.callig-lab-label input[type=range]{font-weight:400;min-width:6rem}
.callig-actions button{margin:0}
.callig-enhance-bar{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.35rem 0}
.callig-enhance-bar label{font-size:.78rem;font-weight:600;color:var(--text-muted);display:inline-flex;align-items:center;gap:.3rem}

.callig-voice-bar{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.callig-voice-status{font-size:.78rem;color:var(--text-muted);padding:.2rem .45rem;border-radius:8px;background:rgba(15,76,58,.06);border:1px solid var(--border);max-width:100%}
.callig-voice-status.live{color:#8a3030;border-color:rgba(138,48,48,.35);background:rgba(138,48,48,.08);font-weight:600}

.callig-mic-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.4rem;margin-bottom:.35rem}
.callig-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.35rem}
@media (max-width:700px){.callig-live-grid{grid-template-columns:1fr}}
.callig-voice-ar{font-family:'Scheherazade New',Amiri,'Noto Naskh Arabic',serif;font-size:1.15rem;line-height:1.75;direction:rtl;text-align:right}
.callig-live-toggle{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;color:var(--text-muted);cursor:pointer}
.callig-mic-panel{margin-top:.35rem;padding:.6rem .7rem;border-radius:12px;border:1px solid rgba(15,76,58,.22);background:linear-gradient(145deg,rgba(15,76,58,.05),rgba(184,146,42,.05))}

.callig-mic-capture-label{display:block;font-size:.72rem;font-weight:700;color:var(--text-muted);margin:.35rem 0 .2rem}
.callig-voice-text{width:100%;min-height:3.2rem;resize:vertical;padding:.5rem .65rem;border-radius:10px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);font-size:.95rem;line-height:1.4;margin:0}
.callig-mic-help{font-size:.72rem;color:var(--text-muted);margin:.35rem 0 0;line-height:1.4}
#callig-mic-stop{display:inline-flex;align-items:center;gap:.3rem;background:#6b1d1d!important;color:#fff!important;border:1px solid #8a3030!important;font-weight:700;opacity:.45;pointer-events:auto!important;cursor:pointer}
#callig-mic-stop.show,#callig-mic-stop:not([disabled]){opacity:1}
#callig-mic-btn.recording,#callig-mic-ar-btn.recording{background:#8a3030!important;color:#fff!important}

.callig-canvas-tools{display:flex;flex-direction:column;gap:.45rem;margin:.5rem 0 .55rem;padding:.65rem .7rem;border-radius:14px;border:1px solid var(--border);background:linear-gradient(145deg,var(--bg-elevated,var(--card-bg)),rgba(15,76,58,.04))}
.callig-canvas-tools .ct-title{font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin:0}
.callig-canvas-tools .ct-row{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.callig-canvas-tools input[type=text]{flex:1;min-width:11rem;margin:0;padding:.45rem .6rem;border-radius:10px;border:1px solid var(--border);background:var(--card-bg);color:var(--text)}
.callig-stage-wrap{position:relative;border-radius:14px;border:1px solid var(--border);overflow:hidden}
.callig-stage-wrap .callig-live-pill{display:none;position:absolute;top:.55rem;left:50%;transform:translateX(-50%);z-index:5;background:rgba(107,29,29,.92);color:#fff;font-size:.75rem;font-weight:700;padding:.28rem .7rem;border-radius:999px;box-shadow:0 4px 14px rgba(0,0,0,.2);pointer-events:none}
.callig-stage-wrap.listening .callig-live-pill{display:inline-flex;align-items:center;gap:.3rem}
#callig-translate-preview .ar-out{font-family:'Scheherazade New',Amiri,serif;direction:rtl;font-size:1.25rem;color:var(--accent);font-weight:600}
#callig-translate-preview .en-out{font-size:.86rem;opacity:.9}
#callig-translate-preview:empty{display:none}
/* Site-wide stream-style audio buttons (match Journey verse) */
.verse-audio-btn,.clarity-stream-btn,button.clarity-ar-btn,#hajj-audio-btn,#callig-audio-btn,#hifz-audio-btn,#meme-hear-btn{
  background:var(--accent-soft)!important;color:var(--accent)!important;border:1px solid var(--border)!important;
  font-size:.86rem!important;padding:.45rem .9rem!important;border-radius:10px!important;
  display:inline-flex!important;align-items:center;gap:.28rem;font-weight:600;cursor:pointer;
  box-shadow:0 1px 0 rgba(255,255,255,.4) inset;transition:background .15s,transform .12s,box-shadow .15s
}
.verse-audio-btn:hover,.clarity-stream-btn:hover,button.clarity-ar-btn:hover,#hajj-audio-btn:hover,#callig-audio-btn:hover,#hifz-audio-btn:hover,#meme-hear-btn:hover{
  filter:brightness(1.05);transform:translateY(-1px)
}
.verse-audio-btn.playing,.clarity-stream-btn.playing,button.clarity-ar-btn.playing,#hajj-audio-btn.playing,#callig-audio-btn.playing,#hifz-audio-btn.playing,#meme-hear-btn.playing{
  background:var(--accent)!important;color:var(--accent-fg)!important;border-color:var(--accent)!important;
  box-shadow:0 0 0 2px rgba(15,76,58,.25)
}
.clarity-ar-btn{padding:.28rem .55rem!important;font-size:.78rem!important;min-width:2rem;justify-content:center}
.clarity-stream-dot{width:.42rem;height:.42rem;border-radius:50%;background:currentColor;box-shadow:0 0 0 0 rgba(15,76,58,.5);animation:livePulse 1.4s ease-out infinite}
html[data-theme="dark"] .callig-lab-stage{background:#152019}
html[data-theme="dark"] .callig-stylus-hint{background:rgba(61,155,114,.1);border-color:rgba(255,255,255,.1)}
#meme-hear-btn{display:inline-flex!important;visibility:visible!important;opacity:1!important}

/* Clarity unified Arabic recitation */
.clarity-ar-wrap{position:relative;display:inline-block;max-width:100%;vertical-align:baseline}
.clarity-ar-wrap.block{display:block}
.clarity-ar-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.2rem;
  margin-inline-start:.35rem;margin-top:.15rem;vertical-align:middle;
  width:auto;min-width:1.85rem;height:1.85rem;padding:.15rem .45rem;
  border-radius:999px;border:1px solid rgba(15,76,58,.28);
  background:var(--accent-soft,rgba(15,76,58,.12));color:var(--accent,#0f4c3a);
  font-size:.72rem;font-weight:700;cursor:pointer;line-height:1;
  box-shadow:0 1px 4px rgba(0,0,0,.08);
}
.clarity-ar-btn:hover{filter:brightness(1.08)}
.clarity-ar-btn.playing{background:#8a3030;color:#fff;border-color:rgba(255,255,255,.35)}
.clarity-ar-btn .dot{width:.4rem;height:.4rem;border-radius:50%;background:#7dff9a;display:none}
.clarity-ar-btn.playing .dot{display:inline-block;animation:livePulse 1.4s ease-out infinite}
html[data-theme="dark"] .clarity-ar-btn{background:rgba(61,155,114,.18);color:#8fd4a0;border-color:rgba(143,212,160,.35)}
.clarity-speak-bar{
  display:inline-flex;align-items:center;gap:.3rem;flex-wrap:nowrap;
}
.clarity-speak-bar button{
  margin:0;padding:.28rem .55rem;font-size:.72rem;border-radius:999px;
  background:rgba(255,255,255,.18);color:#fff;border:1px solid rgba(255,255,255,.35);
  cursor:pointer;white-space:nowrap;width:auto;
}
.clarity-speak-bar button.on{background:rgba(125,255,154,.25);border-color:rgba(125,255,154,.5)}
.clarity-speak-bar button.muted{opacity:.75}
.arabic[data-clarity-spoken="1"],.arabic-calligraphy[data-clarity-spoken="1"],
.rabbana-arabic[data-clarity-spoken="1"],.dua-ar[data-clarity-spoken="1"],
.sr-ar[data-clarity-spoken="1"],[data-ar][data-clarity-spoken="1"]{outline:none}

/* Unified: Visual cards + Fiqh quiz levels + Calligraphy dock */
.mv-bar{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.45rem}
.mv-group{display:flex;flex-wrap:wrap;gap:.28rem;align-items:center}
.mv-label{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);min-width:4.5rem}
.mv-chip{font-size:.75rem;font-weight:600;padding:.32rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated,var(--card-bg));color:var(--text);cursor:pointer}
.mv-chip.mv-accent{background:linear-gradient(135deg,#0d4f3c,#b8922a);color:#fff;border:none;font-weight:800}
.mv-upload{display:inline-flex;align-items:center;cursor:pointer}
.mv-work{display:grid;gap:.45rem}
@media(min-width:820px){.mv-work{grid-template-columns:minmax(0,1.15fr) minmax(12rem,.85fr);align-items:start}}
.mv-side{display:flex;flex-direction:column;gap:.35rem}
.mv-side-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.mv-field{display:flex;flex-direction:column;gap:.12rem;font-size:.72rem;font-weight:600;flex:1;min-width:6rem}
.mv-field input[type=text],.mv-field textarea,.mv-side select{font-size:.85rem;padding:.35rem .45rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);width:100%}
#meme-card .meme-stage-wrap{min-height:0!important}
.meme-fetch-status{font-size:.75rem;color:var(--accent);min-height:1.15em}
.fq-card{border-top:3px solid var(--sky,#2a5f7a)}
.fq-head{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;margin:0 0 .55rem}
.fq-stats{display:flex;flex-wrap:wrap;gap:.35rem}
.fq-pill{font-size:.72rem;font-weight:700;padding:.22rem .55rem;border-radius:999px;background:var(--sky-soft,#e8f1f6);color:var(--sky,#2a5f7a);border:1px solid rgba(42,95,122,.2)}
.fq-pill.gold{background:var(--gold-soft,#f5edd6);color:#6a4a10;border-color:rgba(184,146,42,.35)}
.fq-pill.green{background:var(--accent-soft,#e6f2ec);color:var(--accent,#0d4f3c)}
.fq-level-row{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .55rem}
.fq-level-btn{font-size:.78rem;font-weight:700;padding:.35rem .7rem;border-radius:999px;border:1.5px solid var(--border);background:var(--bg);cursor:pointer;color:var(--text)}
.fq-level-btn.on{border-color:var(--sky,#2a5f7a);background:var(--sky-soft,#e8f1f6);color:var(--sky,#2a5f7a)}
.fq-stage{position:relative;min-height:200px}
.fq-qcard{background:linear-gradient(165deg,var(--bg-elevated,#fffdf8),var(--sky-soft,#e8f1f6));border:1px solid var(--border);border-radius:16px;padding:1rem 1.05rem 1.1rem;box-shadow:var(--shadow);animation:fqIn .35s ease}
@keyframes fqIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
html[data-theme="dark"] .fq-qcard{background:linear-gradient(165deg,#152028,#121a20)}
.fq-cat{font-size:.7rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--sky);margin-bottom:.35rem}
.fq-question{font-size:1.05rem;font-weight:600;line-height:1.45;margin:0 0 .75rem;color:var(--text)}
.fq-options{display:flex;flex-direction:column;gap:.4rem}
.fq-opt{text-align:left;width:100%;padding:.65rem .8rem;border-radius:12px;border:1.5px solid var(--border);background:var(--bg-elevated,#fff);cursor:pointer;font-size:.92rem;line-height:1.35}
.fq-opt:hover{border-color:var(--sky);transform:translateY(-1px)}
.fq-opt.correct{border-color:#1a7a4a;background:#e6f6ec;font-weight:700}
.fq-opt.wrong{border-color:#a33;background:#fdeaea}
.fq-opt:disabled{cursor:default}
.fq-explain{margin-top:.65rem;padding:.55rem .7rem;border-radius:10px;background:rgba(13,79,60,.06);border-left:3px solid var(--accent);font-size:.84rem;line-height:1.45;display:none}
.fq-explain.show{display:block}
.fq-explain .fq-ref{font-size:.78rem;color:var(--text-muted);margin-top:.3rem}
.fq-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem;align-items:center}
.fq-progress{flex:1;min-width:120px;height:8px;border-radius:99px;background:rgba(0,0,0,.08);overflow:hidden}
.fq-progress>i{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--accent),var(--sky));border-radius:99px;transition:width .3s}
.fq-done{text-align:center;padding:1.2rem .8rem}
.fq-sources{font-size:.75rem;color:var(--text-muted);margin-top:.65rem;line-height:1.4}
.callig-dock{margin-top:.5rem;padding:.5rem .55rem;border-radius:14px;border:1px solid var(--border);background:var(--bg-elevated,rgba(255,253,248,.95))}
.callig-tip-tools{display:flex;flex-wrap:wrap;gap:.28rem;margin:.25rem 0 .4rem}
.callig-tip-btn{font-size:.75rem;padding:.3rem .5rem;border-radius:999px;border:1.5px solid var(--border);background:var(--bg);cursor:pointer;font-weight:600}
.callig-tip-btn.on{border-color:var(--accent,#0f4c3a);background:var(--accent-soft,#efeaf5);color:var(--accent)}
.callig-score-out{font-size:.8rem;font-weight:600;color:var(--accent,#0f4c3a);margin-left:.35rem;padding:.25rem .5rem;border-radius:8px;background:var(--accent-soft,#efeaf5);display:inline-block}
.callig-wsp-panel{margin:.45rem 0;padding:.5rem .55rem;border-radius:12px;border:1px solid var(--border);background:linear-gradient(135deg,rgba(13,79,60,.06),rgba(42,95,122,.06))}
.callig-wsp-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.callig-wsp-hint{font-size:.72rem;color:var(--text-muted);margin:.3rem 0 0}
.wsp-badge{font-size:.7rem;font-weight:700;padding:.15rem .45rem;border-radius:999px;background:rgba(13,79,60,.12);color:var(--accent)}
.callig-dock-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--accent,#0f4c3a);margin:0 0 .3rem}
.callig-dock-section{margin-top:.45rem;padding-top:.45rem;border-top:1px solid var(--border)}

.vt-card{background:linear-gradient(145deg,#e8f1f6,#f5f9fc);border:1px solid #a8c5d8}
html[data-theme="dark"] .vt-card{background:linear-gradient(145deg,#152028,#121a20);border-color:#2a3a48}
.vt-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:.45rem;align-items:end;margin:.35rem 0}
.vt-lab{display:flex;flex-direction:column;gap:.2rem;font-size:.75rem;font-weight:700;color:var(--text-muted)}
.vt-lab select{font-weight:500;margin:0;padding:.45rem .55rem;border-radius:10px}
.vt-swap{margin:0;min-width:2.6rem;padding:.45rem .5rem;font-size:1.1rem}
.vt-presets{display:flex;flex-wrap:wrap;gap:.3rem;margin:.35rem 0}
.vt-chip{margin:0;padding:.28rem .55rem;font-size:.75rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);cursor:pointer;font-weight:600}
.vt-chip:hover{filter:brightness(1.05)}
.vt-actions{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin:.4rem 0}
.vt-actions button{margin:0}
.vt-status{font-size:.78rem;color:var(--text-muted);padding:.2rem .45rem;border-radius:8px;background:rgba(15,76,58,.06);border:1px solid var(--border)}
.vt-status.live{color:#0d4f3c;font-weight:700;border-color:rgba(13,79,60,.3)}
html[data-theme="dark"] .vt-status.live{color:#8fd4a0}
.vt-io{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.35rem}
@media (max-width:700px){.vt-io,.vt-grid{grid-template-columns:1fr}.vt-swap{justify-self:start}}
.vt-cap{display:block;font-size:.72rem;font-weight:700;color:var(--text-muted);margin:0 0 .25rem}
.vt-io textarea{width:100%;min-height:6rem;padding:.55rem .65rem;border-radius:12px;border:1px solid var(--border);background:var(--card-bg);color:var(--text);font-size:.95rem;line-height:1.5;resize:vertical}
#vt-out{font-size:1.05rem}
.vt-help{font-size:.75rem;color:var(--text-muted);margin:.45rem 0 0;line-height:1.4}
#vt-mic.recording{background:#8a3030!important;color:#fff!important}
#vt-stop:not([disabled]){opacity:1;background:#6b1d1d!important;color:#fff!important}

.vt-progress-wrap{margin:.45rem 0 .2rem}
.vt-progress-bar{height:.45rem;border-radius:999px;background:rgba(15,76,58,.12);overflow:hidden}
.vt-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--accent),#2a9d6e);transition:width .25s ease}
.vt-progress-label{font-size:.72rem;color:var(--text-muted);margin-top:.25rem}
#vt-mic.recording{background:#8a3030!important;color:#fff!important;animation:livePulse 1.2s ease-out infinite}

.vt-cache-bar{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 .55rem}
.vt-cache-badge{font-size:.78rem;font-weight:600;padding:.28rem .55rem;border-radius:999px;background:rgba(15,76,58,.1);border:1px solid rgba(15,76,58,.22);color:var(--accent)}
.vt-cache-badge.ok{background:rgba(34,120,70,.15);border-color:rgba(34,120,70,.4)}
.vt-cache-badge.miss{background:rgba(180,100,40,.12);border-color:rgba(180,100,40,.35)}
.vt-cache-badge.err{background:rgba(160,40,40,.12);border-color:rgba(160,40,40,.35)}
.vt-io{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.5rem}
@media (max-width:640px){.vt-io{grid-template-columns:1fr}}
.vt-cap{display:block;font-size:.78rem;font-weight:600;margin-bottom:.2rem;color:var(--text-muted)}
.vt-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0}
.vt-presets{display:flex;flex-wrap:wrap;gap:.3rem;margin:.35rem 0}
.vt-chip{font-size:.75rem;padding:.28rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--accent-soft);cursor:pointer;font-weight:600}
.vt-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:.4rem;align-items:end;margin-bottom:.35rem}
.vt-lab{font-size:.8rem;font-weight:600;display:flex;flex-direction:column;gap:.2rem}
.vt-lab select{padding:.4rem .5rem;border-radius:10px;border:1px solid var(--border);font-size:.88rem}
.vt-status{font-size:.84rem;margin:.4rem 0;color:var(--text-muted)}
.vt-progress-wrap{margin:.35rem 0 .5rem}
.vt-progress-bar{height:.45rem;border-radius:999px;background:rgba(0,0,0,.08);overflow:hidden}
.vt-progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),#2d8a5e);transition:width .2s ease}
.vt-progress-label{font-size:.75rem;margin-top:.2rem;color:var(--text-muted)}
.clarity-deep-tip{font-size:.8rem;line-height:1.45;margin:.4rem 0 .2rem;padding:.45rem .65rem;border-radius:10px;background:var(--sky-soft,#e8f1f6);border-left:3px solid var(--sky,#2a5f7a);color:var(--text)}
/* ===== Hajj Ritual Guide · high-contrast readable palette ===== */
.hajj-guide-card{
  background:#f7f4ec !important;
  color:#1a2420 !important;
  border:1px solid #d4cbb8 !important;
  border-radius:18px;
  box-shadow:0 6px 22px rgba(20,40,30,.08) !important;
  padding:1rem 1.05rem 1.15rem;
}
.hajj-guide-card h2{
  color:#0b3d2e !important;
  font-family:'Cormorant Garamond',Georgia,serif;
  font-size:1.45rem;
  margin:0 0 .35rem;
}
.hajj-guide-card > p{
  color:#3a4a42 !important;
  font-size:.86rem;
  line-height:1.5;
}
.hajj-guide-card label{color:#0b3d2e !important;font-weight:700}
.hajj-guide-card a{color:#0b5c45;font-weight:600;text-decoration:underline}
.hajj-guide-card a:hover{color:#0b3d2e}

.hajj-type-row{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0;align-items:center}
.hajj-type-row label{font-size:.78rem;min-width:2.8rem}
.hajj-type-row select{
  flex:1 1 12rem;padding:.5rem .65rem;border-radius:10px;font-size:.9rem;
  border:1.5px solid #c5bba8;background:#fff;color:#1a2420;
}

.hajj-progress{display:flex;flex-wrap:wrap;gap:.3rem;margin:.55rem 0}
.hajj-chip{
  font-size:.7rem;font-weight:600;padding:.3rem .55rem;border-radius:999px;cursor:pointer;
  border:1.5px solid #c5bba8;background:#fff;color:#1a2420;line-height:1.25;
}
.hajj-chip.done{background:#d8f0e4;border-color:#0b5c45;color:#0b3d2e}
.hajj-chip.active{background:#0b5c45;border-color:#0b5c45;color:#fff;box-shadow:0 0 0 2px #c9a227}

/* Slide panel — always light surface for reading */
.hajj-panel{
  margin-top:.55rem;padding:0;border-radius:16px;overflow:hidden;
  background:#ffffff;color:#1a2420;
  border:1.5px solid #d4cbb8;
  box-shadow:0 2px 12px rgba(0,0,0,.04);
}
.hajj-panel h3{
  color:#0b3d2e;font-family:'Cormorant Garamond',Georgia,serif;
  margin:.85rem 1rem .3rem;font-size:1.3rem;line-height:1.3;
}
.hajj-hero{position:relative;width:100%;max-height:190px;overflow:hidden;background:#1a3d32}
.hajj-hero img{width:100%;height:190px;object-fit:cover;display:block}
.hajj-hero-cap{
  position:absolute;left:0;right:0;bottom:0;padding:.4rem .8rem;
  font-size:.78rem;font-weight:700;color:#fff;
  background:linear-gradient(transparent,rgba(8,28,22,.82));
}
.hajj-meta{font-size:.8rem;color:#4a5a52;margin:0 1rem .5rem;line-height:1.4}
.hajj-level-pill{
  display:inline-block;padding:.12rem .5rem;border-radius:999px;
  background:#f0e6c8;color:#5a4010;font-weight:700;font-size:.72rem;
}
.hajj-done-badge{
  font-size:.75rem;color:#0b3d2e;background:#d8f0e4;
  padding:.12rem .45rem;border-radius:6px;font-weight:700;
}
.hajj-fiqh{
  font-size:.95rem;line-height:1.7;margin:.2rem 1rem .65rem;
  color:#1a2420 !important;
}

.hajj-cols{display:grid;gap:.55rem;margin:.4rem 1rem;grid-template-columns:1fr}
@media(min-width:640px){.hajj-cols{grid-template-columns:1fr 1fr}}

/* High-contrast Do / Avoid — never dark text on dark bg */
.hajj-col{
  border-radius:12px;padding:.6rem .75rem;border:1.5px solid transparent;
}
.hajj-col.do{
  background:#e7f6ee !important;
  border-color:#8bc9a8 !important;
  color:#0b3d2e !important;
}
.hajj-col.avoid{
  background:#fef3ec !important;
  border-color:#e8b89a !important;
  color:#5c2e18 !important;
}
.hajj-do-title{font-weight:800;color:#0b5c45 !important;margin:0 0 .25rem;font-size:.9rem}
.hajj-avoid-title{font-weight:800;color:#a04520 !important;margin:0 0 .25rem;font-size:.9rem}
.hajj-col ul{margin:0;padding-left:1.15rem;font-size:.88rem;line-height:1.55}
.hajj-col li{color:inherit !important;margin:.15rem 0}

.hajj-note{
  margin:.5rem 1rem;padding:.55rem .75rem;border-radius:10px;
  background:#faf3e0;border-left:4px solid #c9a227;
  font-size:.88rem;line-height:1.55;color:#3a3220 !important;
}
.hajj-learn{
  margin:.5rem 1rem;padding:.55rem .75rem;border-radius:10px;
  background:#e8f2f8;border-left:4px solid #2a5f7a;
  font-size:.88rem;line-height:1.55;color:#1a3040 !important;
}

.hajj-dua-box{
  margin:.6rem 1rem 1rem;padding:.75rem .9rem;border-radius:14px;
  background:linear-gradient(145deg,#0b3d2e,#147a58);
  color:#f7f3eb !important;
}
.hajj-dua-box .dua-ar{
  font-family:'Scheherazade New','Amiri',serif;direction:rtl;
  font-size:1.25rem;line-height:2;margin-bottom:.3rem;color:#fff !important;
}
.hajj-dua-box .dua-en{font-size:.88rem;opacity:.95;color:#f0ebe3 !important}
.hajj-dua-box .hajj-audio-btn,
.hajj-dua-box button{
  margin-top:.45rem;background:#fff;color:#0b3d2e;border:none;
  padding:.35rem .75rem;border-radius:999px;font-weight:700;cursor:pointer;
}

.hajj-refs{
  margin:0 1rem 1.1rem;font-size:.82rem;
  display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;
}
.hajj-refs-label{font-weight:700;color:#4a5a52}
.hajj-ref-link{
  display:inline-block;padding:.25rem .55rem;border-radius:8px;
  background:#e7f6ee;color:#0b3d2e !important;text-decoration:none;font-weight:600;
  border:1px solid #8bc9a8;
}
.hajj-ref-link:hover{background:#0b5c45;color:#fff !important;border-color:#0b5c45}

.hajj-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0}
.hajj-actions button{
  background:#fff;color:#0b3d2e;border:1.5px solid #c5bba8;
  padding:.4rem .7rem;border-radius:10px;font-weight:600;cursor:pointer;font-size:.82rem;
}
.hajj-actions button:hover{border-color:#0b5c45;background:#e7f6ee}

.hajj-talbiyah-wrap{
  margin:.65rem 0;padding:.75rem .9rem;border-radius:14px;
  background:#fff;border:1.5px solid #d4cbb8;color:#1a2420;
}
.hajj-talbiyah-wrap strong{color:#0b3d2e}
.hajj-talbiyah-wrap .dua-ar{
  font-family:'Scheherazade New','Amiri',serif;direction:rtl;
  font-size:1.15rem;line-height:1.95;color:#1a2420 !important;
}
.talbiyah-counter{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;margin-top:.4rem}
.talbiyah-counter button{
  background:#0b5c45;color:#fff;border:none;padding:.35rem .65rem;
  border-radius:8px;font-weight:700;cursor:pointer;
}
.talbiyah-counter span{font-weight:800;font-size:1.1rem;min-width:1.5rem;text-align:center;color:#0b3d2e}

.hajj-video-wrap{
  margin:.65rem 0;padding:.75rem .9rem;border-radius:14px;
  background:#1a2a22;color:#f5e6b8;
}
.hajj-video-wrap strong{color:#f5e6b8}
.hajj-video-wrap a{color:#e8d48b}
.hajj-video-wrap select{
  background:#fff;color:#1a2420;border:1px solid #c5bba8;
  padding:.4rem .55rem;border-radius:8px;
}
.hajj-video-frame{position:relative;padding-bottom:56.25%;height:0;overflow:hidden;border-radius:10px;margin-top:.4rem}
.hajj-video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.hajj-disclaimer{font-size:.8rem;color:#4a5a52;margin-top:.55rem;line-height:1.45}

/* Dark theme — still readable */
html[data-theme="dark"] .hajj-guide-card{
  background:#15241c !important;color:#e8efe9 !important;border-color:#2a3d34 !important;
}
html[data-theme="dark"] .hajj-guide-card h2{color:#e8d48b !important}
html[data-theme="dark"] .hajj-guide-card > p{color:#b8c8be !important}
html[data-theme="dark"] .hajj-type-row select{background:#1a2e24;color:#e8efe9;border-color:#2a3d34}
html[data-theme="dark"] .hajj-chip{background:#1a2e24;color:#e8efe9;border-color:#2a3d34}
html[data-theme="dark"] .hajj-chip.active{background:#c9a227;color:#1a2420;border-color:#c9a227}
html[data-theme="dark"] .hajj-panel{background:#1a2420;color:#e8efe9;border-color:#2a3d34}
html[data-theme="dark"] .hajj-panel h3{color:#e8d48b}
html[data-theme="dark"] .hajj-fiqh{color:#d8e4dc !important}
html[data-theme="dark"] .hajj-meta{color:#9aafa4}
html[data-theme="dark"] .hajj-col.do{background:#1e3a2e !important;border-color:#3a6b52 !important;color:#d8f0e4 !important}
html[data-theme="dark"] .hajj-col.avoid{background:#3a2a1e !important;border-color:#6b4a32 !important;color:#f5e0d0 !important}
html[data-theme="dark"] .hajj-do-title{color:#8fd4b0 !important}
html[data-theme="dark"] .hajj-avoid-title{color:#f0b090 !important}
html[data-theme="dark"] .hajj-note{background:#2a2818;color:#e8dcb0 !important;border-left-color:#c9a227}
html[data-theme="dark"] .hajj-learn{background:#1a2830;color:#c8dce8 !important;border-left-color:#5a9aba}
html[data-theme="dark"] .hajj-talbiyah-wrap{background:#1a2420;border-color:#2a3d34;color:#e8efe9}
html[data-theme="dark"] .hajj-talbiyah-wrap .dua-ar{color:#e8efe9 !important}
html[data-theme="dark"] .hajj-actions button{background:#1a2e24;color:#e8efe9;border-color:#2a3d34}

.hajj-slide-nav{display:flex;justify-content:space-between;gap:.5rem;padding:.55rem .85rem 0}.hajj-slide-nav button{background:#0b5c45;color:#fff;border:none;padding:.35rem .75rem;border-radius:8px;font-weight:700;cursor:pointer;font-size:.8rem}.hajj-slide-nav button:hover{background:#0b3d2e}
/* ===== Hajj guide · final cascade (readable) ===== */
#hajj-guide-card.hajj-guide-card,
#tab-search #hajj-guide-card,
div.card.card-search.hajj-guide-card{
  background:#f7f4ec !important;
  background-image:none !important;
  color:#1a2420 !important;
  border:1px solid #d0c6b0 !important;
}
#hajj-guide-card h2{color:#0b3d2e !important}
#hajj-guide-card > p{color:#2c3a32 !important;opacity:1 !important}
#hajj-guide-card label{color:#0b3d2e !important}
#hajj-guide-card .hajj-chip{background:#fff !important;color:#1a2420 !important;border-color:#c5bba8 !important}
#hajj-guide-card .hajj-chip.active{background:#0b5c45 !important;color:#fff !important}
#hajj-guide-card .hajj-chip.done{background:#d8f0e4 !important;color:#0b3d2e !important}
#hajj-guide-card .hajj-panel{
  background:#ffffff !important;color:#1a2420 !important;border:1.5px solid #d0c6b0 !important;
}
#hajj-guide-card .hajj-panel h3{color:#0b3d2e !important}
#hajj-guide-card .hajj-fiqh{color:#1a2420 !important;opacity:1 !important;font-size:.95rem;line-height:1.7}
#hajj-guide-card .hajj-meta{color:#4a5a52 !important}
#hajj-guide-card .hajj-col.do{
  background:#e7f6ee !important;border:1.5px solid #7ec4a0 !important;color:#0b3d2e !important;
}
#hajj-guide-card .hajj-col.avoid{
  background:#fef3ec !important;border:1.5px solid #e0a88a !important;color:#5c2e18 !important;
}
#hajj-guide-card .hajj-do-title{color:#0b5c45 !important}
#hajj-guide-card .hajj-avoid-title{color:#a04520 !important}
#hajj-guide-card .hajj-col li{color:inherit !important}
#hajj-guide-card .hajj-note{
  background:#faf3e0 !important;color:#3a3220 !important;border-left:4px solid #c9a227 !important;
}
#hajj-guide-card .hajj-learn{
  background:#e8f2f8 !important;color:#1a3040 !important;border-left:4px solid #2a5f7a !important;
}
#hajj-guide-card .hajj-dua-box{background:linear-gradient(145deg,#0b3d2e,#147a58) !important;color:#f7f3eb !important}
#hajj-guide-card .hajj-talbiyah-wrap{background:#fff !important;color:#1a2420 !important;border:1.5px solid #d0c6b0 !important}
#hajj-guide-card .hajj-talbiyah-wrap .dua-ar{color:#1a2420 !important}
#hajj-guide-card .hajj-actions button{
  background:#fff !important;color:#0b3d2e !important;border:1.5px solid #c5bba8 !important;
}
#hajj-guide-card .hajj-type-row select{background:#fff !important;color:#1a2420 !important;border:1.5px solid #c5bba8 !important}
#hajj-guide-card .hajj-disclaimer{color:#4a5a52 !important}

html[data-theme="dark"] #hajj-guide-card.hajj-guide-card,
html[data-theme="dark"] #tab-search #hajj-guide-card{
  background:#15241c !important;color:#e8efe9 !important;border-color:#2a3d34 !important;
}
html[data-theme="dark"] #hajj-guide-card > p{color:#c5d4cb !important}
html[data-theme="dark"] #hajj-guide-card .hajj-panel{background:#1a2420 !important;color:#e8efe9 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-fiqh{color:#d8e4dc !important}
html[data-theme="dark"] #hajj-guide-card .hajj-col.do{background:#1e3a2e !important;color:#d8f0e4 !important;border-color:#3a6b52 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-col.avoid{background:#3a2a1e !important;color:#f5e0d0 !important;border-color:#6b4a32 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-note{background:#2a2818 !important;color:#e8dcb0 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-learn{background:#1a2830 !important;color:#c8dce8 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-talbiyah-wrap{background:#1a2420 !important;color:#e8efe9 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-talbiyah-wrap .dua-ar{color:#e8efe9 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-chip{background:#1a2e24 !important;color:#e8efe9 !important}
html[data-theme="dark"] #hajj-guide-card .hajj-actions button{background:#1a2e24 !important;color:#e8efe9 !important}

/* Fiqh quiz — high contrast options */
#fiqh-quiz-card .fq-opt,
.fq-opt{
  text-align:left;width:100%;padding:.7rem .85rem;border-radius:12px;
  border:1.5px solid #c5bba8 !important;
  background:#ffffff !important;
  color:#1a2420 !important;
  cursor:pointer;font-size:.94rem;line-height:1.4;font-weight:500;
  opacity:1 !important;
}
#fiqh-quiz-card .fq-opt:hover{border-color:#2a5f7a !important;background:#f0f6fa !important;color:#1a2420 !important}
#fiqh-quiz-card .fq-opt.correct{border-color:#1a7a4a !important;background:#e6f6ec !important;color:#0b3d2e !important;font-weight:700}
#fiqh-quiz-card .fq-opt.wrong{border-color:#a33 !important;background:#fdeaea !important;color:#5a1818 !important}
#fiqh-quiz-card .fq-question{color:#1a2420 !important;font-weight:600}
#fiqh-quiz-card .fq-cat{color:#2a5f7a !important}
#fiqh-quiz-card .fq-qcard{background:#f7fafb !important;border:1px solid #c5d4db !important}
#fiqh-quiz-card > p{color:#3a4a42 !important}
#fiqh-quiz-card h2{color:#0b3d2e !important}
.fq-level-btn{background:#fff !important;color:#1a2420 !important;border:1.5px solid #c5bba8 !important}
.fq-level-btn.on{background:#e8f1f6 !important;color:#2a5f7a !important;border-color:#2a5f7a !important}
html[data-theme="dark"] #fiqh-quiz-card .fq-opt{
  background:#1a2420 !important;color:#e8efe9 !important;border-color:#3a4a42 !important;
}
html[data-theme="dark"] #fiqh-quiz-card .fq-opt:hover{background:#243028 !important}
html[data-theme="dark"] #fiqh-quiz-card .fq-question{color:#e8efe9 !important}
html[data-theme="dark"] #fiqh-quiz-card .fq-qcard{background:#152019 !important;border-color:#2a3a32 !important}

html[data-theme="dark"] #hajj-guide-card h2,
html[data-theme="dark"] #hajj-guide-card.hajj-guide-card h2{
  color:#f0d78c !important;opacity:1 !important;text-shadow:0 1px 2px rgba(0,0,0,.35);
}
html[data-theme="dark"] #hajj-guide-card > p{color:#c5d4cb !important;opacity:1 !important}

/* Section Palette Manager */
.palette-mgr{
  border-top:3px solid var(--accent,#0f4c3a);
  margin-bottom:1rem;
}
.palette-mgr h2{color:var(--accent,#0f4c3a);font-family:'Cormorant Garamond',serif}
.pm-presets{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0}
.pm-preset{
  font-size:.78rem;font-weight:700;padding:.4rem .7rem;border-radius:999px;
  border:1.5px solid var(--border);background:var(--bg-elevated,#fff);cursor:pointer;color:var(--text);
}
.pm-preset:hover{border-color:var(--accent,#0f4c3a)}
.pm-preset.on{background:var(--accent-soft,#efeaf5);border-color:var(--accent,#0f4c3a);color:var(--accent,#0f4c3a)}
.pm-grid{display:grid;gap:.5rem;grid-template-columns:1fr;margin-top:.5rem}
@media(min-width:640px){.pm-grid{grid-template-columns:1fr 1fr}}
.pm-row{
  display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;
  padding:.45rem .55rem;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated,#fff);
}
.pm-row label{font-size:.78rem;font-weight:700;min-width:5.5rem;color:var(--text)}
.pm-row input[type=color]{width:2.2rem;height:2rem;border:none;padding:0;cursor:pointer;background:transparent}
.pm-hint{font-size:.78rem;color:var(--text-muted);margin:.35rem 0 0;line-height:1.4}
.pm-actions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}
.pm-actions button{
  font-size:.8rem;font-weight:700;padding:.4rem .75rem;border-radius:10px;
  border:1.5px solid var(--border);background:var(--bg);cursor:pointer;color:var(--text);
}
.pm-actions button.primary{background:var(--accent,#0f4c3a);color:#fff;border-color:var(--accent,#0f4c3a)}

.callig-topbar{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.5rem}
.callig-stage-wrap{margin:.4rem 0;border-radius:14px;border:1px solid var(--border);overflow:hidden;background:#f7f3eb}
.callig-dock{margin-top:.5rem}
.callig-sliders .callig-lab-label{min-width:9rem}
.callig-score-out{font-size:.82rem;font-weight:700;color:var(--accent,#0f4c3a);padding:.25rem .55rem;border-radius:8px;background:var(--accent-soft,#efeaf5)}

.mv-bar{gap:.4rem}.mv-group{gap:.3rem}
#meme-card .meme-stage-wrap{border-radius:12px;overflow:hidden;border:1px solid var(--border)}
#meme-canvas{max-height:min(46vh,380px)}

.hajj-step-icon{display:inline-block;margin-right:.25rem;font-size:1.1em}
.hajj-path{margin:.4rem 1rem;padding:.5rem .7rem;border-radius:10px;background:#f0f4f0;border-left:4px solid #0d4f3c;font-size:.86rem;line-height:1.5;color:#1a2420}
html[data-theme="dark"] .hajj-path{background:#1a2820;color:#d0e0d8;border-left-color:#3d9b78}
#hajj-guide-card .hajj-chip{font-size:.68rem}

.fq-vis{font-size:1.1rem;margin-right:.2rem}
.fq-res{margin-top:.35rem}
.fq-res a{font-size:.8rem;font-weight:700;color:var(--sky,#2a5f7a);text-decoration:none}
.fq-res a:hover{text-decoration:underline}
#fiqh-quiz-card .fq-opt{background:#fff!important;color:#1a2420!important;border:1.5px solid #c5bba8!important}

.mv-line-sizes{margin:.4rem 0;padding:.45rem .5rem;border-radius:12px;border:1px solid var(--border);background:var(--bg-elevated,#fff)}
.mv-line-sizes .mv-slider{display:flex;align-items:center;gap:.45rem;margin:.28rem 0;font-size:.8rem;font-weight:600}
.mv-line-sizes .mv-slider input[type=range]{flex:1;accent-color:var(--gold,#b8922a)}
.mv-line-sizes .mv-slider span{min-width:1.6rem;text-align:right;font-variant-numeric:tabular-nums;color:var(--accent)}
.mv-bar{margin-bottom:.4rem}
.mv-label{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-right:.25rem}
#fiqh-quiz-card .fq-opt{background:#fff!important;color:#1a2420!important;border:1.5px solid #c5bba8!important;opacity:1!important}
#fiqh-quiz-card .fq-opt:hover{background:#f0f6fa!important;border-color:#2a5f7a!important}
#fiqh-quiz-card .fq-opt.correct{background:#e6f6ec!important;border-color:#1a7a4a!important}
#fiqh-quiz-card .fq-opt.wrong{background:#fdeaea!important;border-color:#a33!important}
.fq-vis{font-size:1.1rem;margin-right:.2rem}
.fq-res a{font-size:.8rem;font-weight:700;color:var(--sky,#2a5f7a)}

/* Compact meme — no wasted space */
#meme-card .meme-studio{display:flex;flex-direction:column;gap:.35rem}
.meme-compact-grid{display:grid;grid-template-columns:1fr;gap:.3rem}
@media(min-width:520px){.meme-compact-grid{grid-template-columns:1fr 1fr 1fr}}
.meme-compact-grid .mv-field{font-size:.75rem;font-weight:700;color:var(--text-muted);display:flex;flex-direction:column;gap:.15rem}
.meme-compact-grid input{font-size:.88rem;padding:.35rem .5rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff);color:var(--text)}
.meme-size-row{display:flex;flex-wrap:wrap;gap:.35rem .55rem;align-items:center;padding:.35rem .45rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-elevated,#fff)}
.meme-size-row label{display:inline-flex;align-items:center;gap:.25rem;font-size:.72rem;font-weight:700;color:var(--text)}
.meme-size-row input[type=range]{width:4.2rem;accent-color:var(--gold,#b8922a)}
.meme-size-row span{min-width:1.4rem;font-variant-numeric:tabular-nums;font-size:.72rem;color:var(--accent)}
.meme-meta-row{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center}
.meme-meta-row select,.meme-meta-row input{font-size:.8rem;padding:.3rem .45rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff);color:var(--text)}
.mv-chip-row{display:flex;flex-wrap:wrap;gap:.28rem;align-items:center}
.mv-tag{font-size:.65rem;font-weight:800;letter-spacing:.04em;color:var(--text-muted);min-width:1.8rem}
.mv-chip{font-size:.75rem;font-weight:700;padding:.32rem .55rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated,#fff);cursor:pointer;color:var(--text);line-height:1.2}
.mv-chip.mv-accent{background:linear-gradient(90deg,#0d4f3c,#2a8f6a);color:#fff;border-color:transparent}
.mv-chip:hover{border-color:var(--gold,#b8922a)}
html[data-theme="dark"] .mv-chip{background:#1a2420;color:#e8efe9;border-color:#3a4a42}
html[data-theme="dark"] .meme-size-row,html[data-theme="dark"] .meme-compact-grid input{background:#152019;color:#e8efe9;border-color:#3a4a42}

#meme-card{padding:.75rem .85rem !important}
#meme-card h2{margin:0 0 .25rem;font-size:1.15rem}
#meme-card .meme-studio{gap:.28rem !important}
.meme-size-row{padding:.25rem .35rem !important;gap:.25rem .4rem !important}
.meme-size-row input[type=range]{width:3.6rem !important}
.mv-chip-row{gap:.22rem !important}
.mv-chip{padding:.28rem .48rem !important;font-size:.72rem !important}
.meme-compact-grid input{padding:.28rem .42rem !important}

#meme-card{padding:.65rem .75rem!important}
#meme-card .meme-studio{display:flex;flex-direction:column;gap:.3rem}
.meme-row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.25rem}
.meme-row3 input{width:100%;font-size:.82rem;padding:.3rem .4rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff);color:var(--text)}
.meme-row-sizes{display:flex;flex-wrap:wrap;gap:.2rem .45rem;align-items:center}
.meme-row-sizes label{display:inline-flex;align-items:center;gap:.15rem;font-size:.68rem;font-weight:700}
.meme-row-sizes input[type=range]{width:3.2rem;accent-color:var(--gold)}
.meme-row-sizes b{font-size:.68rem;min-width:1.2rem;color:var(--accent)}
.meme-row-tools{display:flex;flex-wrap:wrap;gap:.25rem}
.meme-row-tools select{font-size:.78rem;padding:.28rem .4rem;border-radius:8px;border:1px solid var(--border);background:var(--bg-elevated,#fff);color:var(--text);max-width:9rem}
.meme-row-export{display:flex;flex-wrap:wrap;gap:.25rem}
.meme-row-export .mv-chip{font-size:.72rem;padding:.28rem .5rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated,#fff);cursor:pointer;color:var(--text)}
html[data-theme="dark"] .meme-row3 input,
html[data-theme="dark"] .meme-row-tools select,
html[data-theme="dark"] .meme-row-export .mv-chip{background:#152019;color:#e8efe9;border-color:#3a4a42}

/* Meme: canvas fills stage — no giant empty frame */
.meme-studio-cols{display:flex;flex-direction:column;gap:.55rem}
@media(min-width:720px){
  .meme-studio-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,260px);gap:.65rem;align-items:start}
}
.meme-col-canvas{min-width:0}
.meme-col-tools{min-width:0}
.meme-stage-wrap{max-width:420px;margin:0 auto;width:100%}
@media(min-width:720px){.meme-stage-wrap{max-width:100%;margin:0}}
.meme-stage{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  margin:0 auto!important;
  aspect-ratio:unset!important;
  background:#111!important;
  border-radius:12px;
  overflow:hidden;
}
.meme-stage canvas{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:contain;
  background:#111;
}
.meme-tool-block{margin-bottom:.45rem;padding:.4rem .45rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-elevated,#fff)}
.meme-tool-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.3rem}
.meme-tool-block input[type=text]{width:100%;margin:.15rem 0;font-size:.82rem;padding:.3rem .4rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text)}
.meme-chip-wrap{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}
.meme-chip-wrap .mv-chip,.meme-chip-wrap select{
  font-size:.72rem;padding:.28rem .45rem;border-radius:999px;border:1px solid var(--border);
  background:var(--bg);color:var(--text);cursor:pointer
}
.meme-chip-wrap select{border-radius:8px;max-width:6.5rem}
.meme-row-sizes{display:flex;flex-wrap:wrap;gap:.2rem .4rem}
.meme-row-sizes label{display:inline-flex;align-items:center;gap:.12rem;font-size:.68rem;font-weight:700}
.meme-row-sizes input[type=range]{width:3rem;accent-color:var(--gold)}
.meme-row-sizes b{font-size:.65rem;min-width:1.1rem;color:var(--accent)}
html[data-theme="dark"] .meme-tool-block{background:#152019;border-color:#3a4a42}
html[data-theme="dark"] .meme-tool-block input[type=text],
html[data-theme="dark"] .meme-chip-wrap .mv-chip,
html[data-theme="dark"] .meme-chip-wrap select{background:#1a2420;color:#e8efe9;border-color:#3a4a42}

.btn-voice-search{
  font-size:1rem;padding:.35rem .55rem;border-radius:10px;border:1.5px solid var(--border);
  background:var(--bg-elevated,#fff);cursor:pointer;line-height:1;min-width:2.4rem;
}
.btn-voice-search:hover{border-color:var(--accent);background:var(--accent-soft,#e6f2ec)}
.btn-voice-search.listening{
  background:#c81e1e;color:#fff;border-color:#c81e1e;
  animation:voicePulse 1.2s ease-out infinite;
}
@keyframes voicePulse{
  0%{box-shadow:0 0 0 0 rgba(200,30,30,.45)}
  70%{box-shadow:0 0 0 8px rgba(200,30,30,0)}
  100%{box-shadow:0 0 0 0 rgba(200,30,30,0)}
}
.search-row{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.search-row input[type=text]{flex:1;min-width:8rem}
html[data-theme="dark"] .btn-voice-search{background:#1a2420;color:#e8efe9;border-color:#3a4a42}

/* === Unified responsive UX (mobile = desktop tools) === */
.meme-studio-cols{
  display:flex !important;
  flex-direction:column !important;
  gap:.55rem !important;
}
@media(min-width:720px){
  .meme-studio-cols{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(220px,280px) !important;
    gap:.65rem !important;
    align-items:start !important;
  }
}
/* Kill old workbench layouts that diverge mobile/desktop */
#meme-card .meme-workbench,
#meme-card .meme-atelier-skin .meme-workbench{
  display:contents !important;
}
.meme-stage{
  position:relative !important;
  width:100% !important;
  max-width:420px !important;
  margin:0 auto !important;
  aspect-ratio:unset!important;
  background:#111 !important;
  border-radius:12px !important;
  overflow:hidden !important;
}
@media(min-width:720px){
  .meme-stage{ max-width:100% !important; }
}
.meme-stage canvas{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-height:none !important;
}
/* Same search row on all widths */
.search-row{display:flex !important;flex-wrap:wrap !important;gap:.35rem !important;align-items:center !important}
.search-row input[type=text]{flex:1 1 10rem !important;min-width:8rem !important}
.btn-voice-search{flex:0 0 auto !important}
/* Same nav tools — bottom nav complements, never hides desktop tools */
.mobile-bottom-nav{display:none}
.mobile-bottom-nav-inner{
  display:flex;
  flex-wrap:nowrap;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  gap:0.15rem;
  padding:0.25rem 0.35rem calc(0.25rem + env(safe-area-inset-bottom,0px));
  justify-content:flex-start;
  scrollbar-width:none;
}
.mobile-bottom-nav-inner::-webkit-scrollbar{display:none}
.mb-tab{
  flex:0 0 auto;
  min-width:3.6rem;
  max-width:4.6rem;
  padding:0.28rem 0.22rem 0.2rem;
  font-size:0.62rem;
  line-height:1.15;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:0.12rem;
  background:transparent;
  border:none;
  color:inherit;
}
.mb-tab .mb-icon{font-size:1.15rem;line-height:1}
.mb-tab.active{font-weight:700;color:var(--accent,#0d4f3c)}
@media(max-width:768px){
  .mobile-bottom-nav{display:block;position:fixed;bottom:0;left:0;right:0;z-index:200;
    background:var(--card-bg,#fffdf8);border-top:1px solid var(--border,#e0d5c4);
    box-shadow:0 -4px 16px rgba(13,50,40,0.1)}
  .nav-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}
  body{padding-bottom:calc(4.2rem + env(safe-area-inset-bottom,0px))}
}
/* Cards readable both modes */
.card{max-width:100%}
.fq-opt{word-break:break-word}
.callig-dock,.callig-topbar{max-width:100%}

.search-theme-chips{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin:.35rem 0 .5rem}
.search-theme-chips .chip-label{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-right:.15rem}
.theme-chip{
  font-size:.75rem;font-weight:700;padding:.28rem .55rem;border-radius:999px;
  border:1px solid var(--border);background:var(--bg-elevated,#fff);color:var(--text);cursor:pointer;
}
.theme-chip:hover{border-color:var(--accent);background:var(--accent-soft,#e6f2ec)}
.search-empty{font-size:.84rem;color:var(--text-muted);margin:.35rem 0}
.search-row .btn-secondary{font-size:.8rem;padding:.35rem .55rem;border-radius:10px}
#tab-search .card h2{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}
html[data-theme="dark"] .theme-chip{background:#1a2420;color:#e8efe9;border-color:#3a4a42}

.btn-voice-search{
  display:inline-flex !important;align-items:center;gap:.25rem;
  font-size:.82rem !important;font-weight:700;padding:.35rem .55rem !important;
  border-radius:10px;border:1.5px solid var(--border);
  background:var(--bg-elevated,#fff);cursor:pointer;line-height:1.1;min-width:auto !important;
  color:var(--text);
}
.btn-voice-search .voice-mic-icon{font-size:1rem;line-height:1}
.btn-voice-search .voice-mic-label{font-size:.75rem;letter-spacing:.02em}
.btn-voice-search.listening{
  background:#c81e1e !important;color:#fff !important;border-color:#c81e1e !important;
  animation:voicePulse 1.2s ease-out infinite;
}
html[data-theme="dark"] .btn-voice-search{background:#1a2420;color:#e8efe9;border-color:#3a4a42}
#tab-search h2{font-size:1.15rem}
/* Hide legacy TTS audio chrome; Quran Listen (playAyahAudio) kept */
/* Hajj Listen uses natural TTS (not Alafasy) */
.hajj-dua-box .clarity-ar-btn,.hajj-dua-box .clarity-ar-wrap,.talbiyah-box .clarity-ar-btn,#hajj-guide-card .clarity-ar-btn{display:none!important}
.hajj-dua-box .hajj-audio-btn{display:inline-flex!important;align-items:center;gap:.3rem}
.verse-listen-row{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.45rem 0}
.verse-listen-row .ayah-audio-btn{font-size:.8rem!important;padding:.35rem .75rem!important;border-radius:999px}
/* auto ar-btn allowed when no inline-tts sibling */

.inline-tts{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:1.55rem;height:1.55rem;padding:0!important;margin:0 .15rem;
  border-radius:50%;border:1px solid var(--border,rgba(0,0,0,.12));
  background:var(--accent-soft,#e8f0e8)!important;color:var(--accent,#0f4c3a)!important;
  font-size:.72rem!important;cursor:pointer;vertical-align:middle;
  line-height:1;flex:0 0 auto;
}
.inline-tts.tts-active{outline:2px solid var(--accent,#0f4c3a);opacity:.85}
.arabic-calligraphy .inline-tts, .sr-ar .inline-tts{margin-inline-start:.35rem}
.verse-urdu .inline-tts, .sr-ur .inline-tts{margin-inline-end:.35rem}
/* Never let TTS state style Hajj progress chips */
.hajj-chip.playing, .hajj-step.playing, .status-badge.playing{background:inherit!important}
#hajj-audio-btn.tts-active{opacity:.9}

/* ===== SOLID SECTION FORTRESS (no cross-tab leak) ===== */
.tab-panel{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  max-height:0 !important;
  overflow:hidden !important;
  margin:0 !important;
  padding:0 !important;
  pointer-events:none !important;
  position:absolute !important;
  left:auto !important;
  top:0 !important;
  width:100% !important;
  opacity:0 !important;
  z-index:-1 !important;
}
.tab-panel.is-active,
.tab-panel.active{
  display:block !important;
  visibility:visible !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  margin:0 !important;
  padding:0 !important;
  pointer-events:auto !important;
  position:relative !important;
  left:auto !important;
  top:auto !important;
  opacity:1 !important;
  z-index:1 !important;
  animation:claritySectionIn .28s ease;
}
@keyframes claritySectionIn{
  from{opacity:0;transform:translateY(6px)}
  to{opacity:1;transform:none}
}
/* About-only chrome NUKED — meme/tools live in RRRA hubs */
/* Vault isolation: only when notes is not the active door */
body:not([data-active-tab="notes"]) #fiqh-workflow-card,
body:not([data-active-tab="notes"]) #faraid-card,
body:not([data-active-tab="notes"]) #wasiyyah-card,
body:not([data-active-tab="notes"]) #user-family-tree-card {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  overflow: hidden !important;
}
body[data-active-tab="notes"] #fiqh-workflow-card,
body[data-active-tab="notes"] #faraid-card,
body[data-active-tab="notes"] #wasiyyah-card,
body[data-active-tab="notes"] #user-family-tree-card {
  display: block !important;
  visibility: visible !important;
  pointer-events: auto !important;
  height: auto !important;
  overflow: visible !important;
}

/* Notes/About quarantine NUKED — notes-shell visible inside active hub cards */

/* Spiritual glass cards */
.tab-panel.is-active > .card,
.tab-panel.active > .card{
  background:linear-gradient(145deg, rgba(18,42,36,0.92), rgba(12,32,28,0.88)) !important;
  border:1px solid rgba(212,180,90,0.22) !important;
  box-shadow:var(--shadow), var(--glow), inset 0 1px 0 rgba(255,255,255,0.04) !important;
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.tab-panel.is-active > .card h2,
.tab-panel.active > .card h2{
  color:var(--gold) !important;
  letter-spacing:0.02em;
  text-shadow:0 0 24px rgba(212,180,90,0.25);
}
.nav-tabs, .mb-nav, .bottom-nav{
  background:rgba(8,24,20,0.92) !important;
  border-color:rgba(212,180,90,0.2) !important;
  backdrop-filter:blur(16px);
}
.nav-tab.active, .mb-tab.active{
  background:linear-gradient(135deg, rgba(31,166,122,0.35), rgba(212,180,90,0.2)) !important;
  color:var(--gold) !important;
  box-shadow:0 0 20px rgba(31,166,122,0.2);
}
.banner, .clarity-banner, header.banner{
  background:linear-gradient(120deg, #061510 0%, #0d2e26 50%, #0a221c 100%) !important;
  border-bottom:1px solid rgba(212,180,90,0.25) !important;
}
.btn-soft, button.btn-soft{
  background:rgba(31,166,122,0.15) !important;
  border:1px solid rgba(31,166,122,0.35) !important;
  color:var(--accent-light) !important;
}
.inline-tts{
  background:rgba(212,180,90,0.2) !important;
  border-color:rgba(212,180,90,0.4) !important;
  color:var(--gold) !important;
}
/* Geometric star subtle overlay on main */
#main-content::before{
  content:'';
  pointer-events:none;
  position:fixed;
  inset:0;
  z-index:0;
  opacity:0.04;
  background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0L32 28L60 30L32 32L30 60L28 32L0 30L28 28Z' fill='%23d4b45a'/%3E%3C/svg%3E");
}
#main-content{position:relative;z-index:1}

.clarity-daily-deep{display:grid;gap:.55rem;margin:.55rem 0 .75rem}
.daily-deep-card{
  padding:.75rem .85rem;border-radius:14px;
  background:linear-gradient(135deg,rgba(31,166,122,.12),rgba(212,180,90,.08));
  border:1px solid rgba(212,180,90,.25);
}
.daily-deep-label{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin-bottom:.25rem}
.daily-deep-text{font-size:.92rem;line-height:1.55;margin:0 0 .35rem;color:var(--text)}
.daily-deep-link{font-size:.78rem;color:var(--accent-light);font-weight:600}
.fq-qcard{
  background:linear-gradient(145deg,rgba(18,42,36,.95),rgba(10,28,24,.9))!important;
  border:1px solid rgba(212,180,90,.28)!important;
  border-radius:16px;padding:1rem!important;
  box-shadow:0 8px 28px rgba(0,0,0,.25);
}
.fq-qcard h3{color:var(--gold)!important}

.siq-suite{overflow:hidden}
.siq-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.5rem}
.siq-sub{margin:.25rem 0 0;font-size:.88rem;color:var(--text-muted)}
.siq-hero-glow{font-size:2rem;opacity:.5;color:var(--gold);text-shadow:0 0 24px rgba(212,180,90,.4)}
.siq-tabs{display:flex;gap:.4rem;margin:.6rem 0 .75rem;flex-wrap:wrap}
.siq-tab{
  border:1px solid rgba(212,180,90,.3);background:rgba(31,166,122,.1);
  color:var(--text);padding:.45rem .9rem;border-radius:999px;font-weight:700;cursor:pointer;
}
.siq-tab.active{
  background:linear-gradient(135deg,rgba(31,166,122,.45),rgba(212,180,90,.3));
  color:var(--gold);box-shadow:0 0 18px rgba(31,166,122,.25);
}
.siq-panel{display:none}
.siq-panel.active{display:block}
.siq-foot{font-size:.75rem;color:var(--text-muted);margin-top:.65rem}
.siq-start-btn{font-size:1rem!important;padding:.65rem 1.2rem!important;font-weight:800!important}
.siq-opts{display:grid;gap:.4rem;margin-top:.65rem}
.siq-opt{
  text-align:left;padding:.65rem .8rem;border-radius:12px;cursor:pointer;
  border:1px solid rgba(212,180,90,.25);background:rgba(0,0,0,.2);color:var(--text);
  font-size:.92rem;line-height:1.4;
}
.siq-opt:hover{border-color:var(--gold);background:rgba(31,166,122,.15)}
.siq-opt:disabled{opacity:.7;cursor:default}
.siq-progress{height:6px;background:rgba(255,255,255,.08);border-radius:99px;margin-bottom:.65rem;overflow:hidden}
.siq-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--gold));transition:width .3s}
.siq-meta{font-size:.8rem;color:var(--text-muted);margin-bottom:.4rem}
.siq-cat{color:var(--gold);font-weight:700}
.siq-vis{font-size:1.5rem;margin-bottom:.25rem}
.siq-feedback{margin-top:.75rem;padding:.75rem;border-radius:12px}
.siq-feedback.ok{background:rgba(31,166,122,.2);border:1px solid rgba(31,166,122,.4)}
.siq-feedback.bad{background:rgba(180,60,60,.15);border:1px solid rgba(180,60,60,.35)}
.siq-result-card{text-align:center;padding:1.25rem;border-radius:18px;
  background:linear-gradient(160deg,rgba(31,166,122,.2),rgba(212,180,90,.12));
  border:1px solid rgba(212,180,90,.35)}
.siq-index{font-size:3.2rem;font-weight:900;color:var(--gold);line-height:1;text-shadow:0 0 30px rgba(212,180,90,.35)}
.siq-index-label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}
.siq-disclaimer{font-size:.72rem;color:var(--text-muted);margin:.75rem 0}

.tweet-desk{border-top:3px solid #1d9bf0;margin-top:.75rem}
.tweet-desk .td-row{display:flex;flex-wrap:wrap;gap:.35rem;margin:.4rem 0}
.tweet-desk textarea{width:100%;min-height:7.5rem;padding:.65rem .7rem;border-radius:10px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font:inherit}
.tweet-desk .td-meta{font-size:.8rem;color:var(--text-muted);display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap}
.tweet-desk .td-meta.warn{color:#d97706}
.td-src{font-size:.78rem;color:var(--text-muted);margin:.2rem 0 .45rem}

.meme-tutorial-compact summary::-webkit-details-marker{display:none}
.meme-tutorial-compact[open]{padding-bottom:.5rem}
.meme-studio-cols{gap:0.65rem}
.meme-col-tools .meme-tool-block{margin-bottom:0.45rem;padding:0.45rem}
.meme-col-tools input[type="text"]{padding:0.4rem 0.55rem;font-size:0.88rem;margin:0.2rem 0}

/* === Mobile-first meme compact (kill empty preview space) === */
#meme-card{padding:0.75rem 0.7rem 0.85rem!important;margin-bottom:0.75rem!important}
#meme-card h2{margin:0 0 0.2rem!important;font-size:1.05rem!important}
#meme-card .meme-studio-cols{
  display:flex!important;
  flex-direction:column!important;
  gap:0.45rem!important;
  align-items:stretch!important;
}
#meme-card .meme-col-canvas{order:1;width:100%}
#meme-card .meme-col-tools{order:2;width:100%}
#meme-card .meme-stage-wrap{
  max-width:100%!important;
  margin:0 auto!important;
  min-height:0!important;
  max-height:none!important;
}
#meme-card .meme-stage{
  aspect-ratio:unset!important;
  max-width:min(100%,380px)!important;
  margin:0 auto!important;
  max-height:52vh!important;
}
#meme-card canvas#meme-canvas{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:52vh!important;
}
#meme-card .meme-tool-block{padding:0.4rem 0.5rem!important;margin-bottom:0.35rem!important}
#meme-card .meme-tool-label{margin-bottom:0.2rem!important}
#meme-card .meme-col-tools input[type="text"]{margin:0.15rem 0!important;padding:0.35rem 0.5rem!important;font-size:0.86rem!important}
@media(min-width:860px){
  #meme-card .meme-studio-cols{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(240px,300px)!important;
    gap:0.65rem!important;
    align-items:start!important;
  }
  #meme-card .meme-col-canvas{order:0}
  #meme-card .meme-col-tools{order:0}
  #meme-card .meme-stage{max-height:none!important;max-width:100%!important}
  #meme-card canvas#meme-canvas{max-height:none!important}
}
/* Quiz compact mobile UI */
#fiqh-quiz-card{padding:0.85rem 0.75rem!important}
#fiqh-quiz-card .siq-hero{margin-bottom:0.45rem}
#fiqh-quiz-card .fq-stats{display:flex;flex-wrap:wrap;gap:0.3rem;margin-bottom:0.4rem}
#fiqh-quiz-card .fq-pill{font-size:0.72rem;padding:0.25rem 0.55rem}
#fiqh-quiz-card .fq-level-row,#fiqh-quiz-card .fq-topic-row,#fiqh-quiz-card .fq-extra-controls{
  gap:0.28rem!important;margin:0.25rem 0!important
}
#fiqh-quiz-card .fq-qcard{padding:0.85rem 0.8rem!important}
#fiqh-quiz-card .fq-options{display:flex;flex-direction:column;gap:0.35rem}
#fiqh-quiz-card .fq-opt{text-align:left;padding:0.55rem 0.7rem;font-size:0.9rem;border-radius:10px}
#fiqh-quiz-card .fq-online-bar{
  display:flex;flex-wrap:wrap;gap:0.35rem;align-items:center;
  margin:0.35rem 0 0.5rem;padding:0.45rem 0.55rem;
  background:var(--accent-soft);border-radius:10px;border:1px solid var(--border);
  font-size:0.82rem
}

/* Prevent tall empty meme preview on mobile desktop-mode */
@media (max-width:859px){
  #meme-card .meme-stage-wrap,
  #meme-card .meme-stage,
  #meme-card #meme-canvas{
    max-height:min(52vh,420px)!important;
  }
  #meme-card .meme-text-box{
    max-width:94%!important;
  }
  #meme-card + .card,
  #meme-card{
    margin-bottom:0.55rem!important;
  }
  /* collapse leftover gap before quiz */
  #fiqh-quiz-card{margin-top:0.4rem!important}
  .meme-tutorial-compact{margin-top:0.3rem!important}
}

#fq-online-bar .btn-soft,#fq-online-bar .btn-secondary{font-size:0.78rem;padding:0.35rem 0.65rem;margin:0}
#fiqh-quiz-card .fq-topic.on,#fiqh-quiz-card .fq-lvl.on{
  outline:2px solid var(--accent);background:var(--accent-soft);
}

/* === Meme realign: chips above, preview, controls below — no side empty column === */
#meme-card.meme-card-realigned,
#meme-card{
  padding:0.7rem 0.65rem 0.75rem!important;
  margin-bottom:0.5rem!important;
}
.meme-realign{
  display:flex!important;
  flex-direction:column!important;
  gap:0.4rem!important;
  width:100%!important;
}
.meme-realign .meme-col-canvas,
.meme-realign .meme-col-tools{display:contents}
.meme-preview-only{
  width:100%;
  display:flex;
  justify-content:center;
  margin:0!important;
  padding:0!important;
}
.meme-realign .meme-stage-wrap{
  width:100%!important;
  max-width:min(100%,360px)!important;
  margin:0 auto!important;
  min-height:0!important;
  max-height:none!important;
}
.meme-realign .meme-stage{
  width:100%!important;
  max-width:min(100%,360px)!important;
  margin:0 auto!important;
  aspect-ratio:unset!important;
  max-height:48vh!important;
  background:#0d1512!important;
}
.meme-realign #meme-canvas{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-height:48vh!important;
}
.meme-below{display:flex;flex-direction:column;gap:0.35rem;width:100%}
.meme-bar{background:rgba(0,0,0,0.12);border:1px solid var(--border);border-radius:12px;padding:0.4rem 0.5rem}
.meme-bar .meme-tool-label{font-size:0.65rem;font-weight:800;text-transform:uppercase;letter-spacing:0.04em;color:var(--text-muted);margin-bottom:0.25rem}
.meme-chip-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0.28rem!important;
  align-items:center!important;
}
.meme-text-row{
  display:grid;
  grid-template-columns:1fr;
  gap:0.25rem;
}
@media(min-width:520px){
  .meme-text-row{grid-template-columns:1fr 1fr 1fr}
}
.meme-text-row input{
  margin:0!important;
  padding:0.4rem 0.55rem!important;
  font-size:0.88rem!important;
  width:100%!important;
}
.meme-size-row-h{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0.35rem 0.6rem!important;
  align-items:center!important;
  font-size:0.78rem;
}
.meme-size-row-h label{display:inline-flex;align-items:center;gap:0.25rem;white-space:nowrap}
.meme-size-row-h input[type=range]{width:72px;accent-color:var(--accent)}
.meme-realign .mv-chip{
  display:inline-flex!important;
  align-items:center;
  gap:0.2rem;
  padding:0.32rem 0.55rem!important;
  font-size:0.75rem!important;
  border-radius:999px!important;
  white-space:nowrap;
}
.mv-chip.mv-accent{
  background:linear-gradient(135deg,#1fa67a,#0f4c3a)!important;
  color:#fff!important;
  border:none!important;
  font-weight:700!important;
  box-shadow:0 2px 8px rgba(31,166,122,0.35);
}
/* kill old two-column rules for this card */
#meme-card .meme-studio-cols,
#meme-card .meme-realign{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
}
@media(min-width:860px){
  .meme-realign .meme-stage-wrap,
  .meme-realign .meme-stage{max-width:min(100%,420px)!important;max-height:56vh!important}
  .meme-realign #meme-canvas{max-height:56vh!important}
}
/* Online fetch chip — stronger graphic */
#fq-online-bar{
  display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center;
  margin:0.4rem 0 0.55rem;padding:0.55rem 0.65rem;
  background:linear-gradient(135deg,rgba(31,166,122,0.2),rgba(61,138,181,0.15));
  border-radius:14px;border:1px solid rgba(31,166,122,0.35);
  box-shadow:0 4px 14px rgba(0,0,0,0.12);
}
#fq-online-bar .fq-fetch-btn{
  display:inline-flex;align-items:center;gap:0.4rem;
  background:linear-gradient(135deg,#1fa67a,#0d6b4f)!important;
  color:#fff!important;border:none!important;
  padding:0.5rem 0.95rem!important;border-radius:999px!important;
  font-weight:700!important;font-size:0.84rem!important;
  box-shadow:0 3px 12px rgba(31,166,122,0.4);
  letter-spacing:0.02em;
}
#fq-online-bar .fq-fetch-btn:active{transform:scale(0.97)}
#fq-online-bar .fq-stored-btn{
  background:rgba(255,255,255,0.08)!important;color:var(--text)!important;
  border:1px solid var(--border)!important;border-radius:999px!important;
  padding:0.45rem 0.8rem!important;font-size:0.8rem!important;
}

/* Own tree: horizontal generation branching (like main pedigree) */
.uft-own-gens{display:flex;flex-direction:column;align-items:center;gap:0;width:100%;padding:0.35rem 0.25rem 0.6rem;box-sizing:border-box}
.uft-own-gen{width:100%;display:flex;flex-direction:column;align-items:center;gap:0.3rem}
.uft-own-gen-label,.uft-living-root-label{font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--gold,#d4b45a);opacity:0.95}
.uft-own-gen-row{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:0.45rem!important;
  width:100%;
  padding:0.35rem 0.2rem;
}
.uft-own-unit{
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  gap:0.3rem;
  align-items:flex-start;
  justify-content:center;
  background:rgba(0,0,0,0.18);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:0.3rem;
  max-width:100%;
}
.uft-own-gen-link{
  width:2px;height:0.75rem;
  background:linear-gradient(#7a9e5a,#a8c878);
  opacity:0.7;border-radius:2px;margin:0.1rem 0;
}
/* Legacy vertical node layout → force horizontal children too */
#uft-branch-body .uft-nchildren{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:0.45rem!important;
  width:100%!important;
  margin-top:0.45rem!important;
  padding-top:0.45rem!important;
  border-top:2px solid rgba(244,196,48,0.28);
  position:relative;
}
#uft-branch-body .uft-nbranch{
  width:auto!important;
  max-width:min(100%,18rem)!important;
  flex:0 1 auto;
}
#uft-branch-body .uft-nnode{width:auto!important;max-width:100%!important}
#uft-branch-wrap .uft-branch-body{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  padding:0.25rem;min-height:4rem;
}
/* Compact relative dropdown on cards */
.uft-quick-compact{display:block!important;width:100%;margin-top:0.28rem!important}
.uft-add-rel-wrap{display:block;width:100%}
.uft-add-rel-select{
  width:100%!important;
  max-width:100%;
  font-size:0.72rem!important;
  font-weight:700!important;
  padding:0.28rem 0.45rem!important;
  border-radius:8px!important;
  border:1px solid rgba(143,191,98,0.55)!important;
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  color:#f7f3eb!important;
  cursor:pointer;
  appearance:auto;
}
.uft-add-rel-select option{background:#0f4c3a;color:#fff}
.uft-person .uft-quick{grid-template-columns:1fr!important}

.uft-add-rel-btn{
  width:100%!important;max-width:100%;
  font-size:0.72rem!important;font-weight:700!important;
  padding:0.32rem 0.5rem!important;border-radius:8px!important;
  border:1px solid rgba(143,191,98,0.55)!important;
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  color:#f7f3eb!important;cursor:pointer;
}
.uft-rel-menu{
  position:absolute;z-index:100000;
  min-width:11.5rem;max-width:16rem;
  background:#152019;color:#e8f0ea;
  border:1px solid rgba(212,180,90,0.4);
  border-radius:12px;box-shadow:0 12px 36px rgba(0,0,0,0.5);
  padding:0.35rem;display:flex;flex-direction:column;gap:0.2rem;
}
.uft-rel-menu[hidden]{display:none!important}
.uft-rel-menu-title{font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:#d4b45a;padding:0.25rem 0.45rem 0.35rem}
.uft-rel-menu button{
  text-align:left;background:rgba(255,255,255,0.06);color:#e8f0ea;
  border:1px solid rgba(255,255,255,0.1);border-radius:8px;
  padding:0.55rem 0.7rem;font-size:0.9rem;font-weight:600;cursor:pointer;
}
.uft-rel-menu button:hover,.uft-rel-menu button:active{background:rgba(31,166,122,0.25);border-color:#1fa67a}
/* Picker always on top */
.uft-pick-modal{z-index:100001!important}
.uft-pick-modal:not([hidden]){display:flex!important}

/* Balanced pedigree card action icons */
.uft-card-actions{display:flex;flex-direction:column;gap:0.28rem;margin-top:0.35rem;width:100%}
.uft-action-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:0.25rem;width:100%}
.uft-status-row .uft-vital-btn,
.uft-status-row .uft-gender-btn,
.uft-status-row .uft-born-btn{
  flex:1 1 0;min-width:0;text-align:center;
  font-size:0.62rem!important;padding:0.22rem 0.28rem!important;
  border-radius:999px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.uft-nav-row{justify-content:space-between}
.uft-nav-row .uft-focus-btn,
.uft-nav-row .uft-own-btn,
.uft-nav-row .uft-add-rel-btn{
  flex:1 1 0;
  min-width:2.4rem;height:2.15rem;
  display:inline-flex!important;align-items:center;justify-content:center;
  font-size:1rem!important;line-height:1!important;padding:0!important;
  border-radius:999px!important;margin:0!important;width:auto!important;
  border:1px solid rgba(255,255,255,0.14)!important;
  background:rgba(0,0,0,0.22)!important;color:#e8f0ea!important;
  box-shadow:none!important;
}
.uft-nav-row .uft-add-rel-btn{
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  border-color:rgba(143,191,98,0.55)!important;font-weight:800!important;
}
.uft-nav-row .uft-own-btn{
  background:rgba(212,180,90,0.18)!important;border-color:rgba(212,180,90,0.4)!important;
}
.uft-person .uft-meta-row{display:none!important}
.uft-person .uft-quick{display:none!important}
.uft-person .uft-vital-row{display:none!important}
/* Keep del btn corner balanced */
.uft-person .uft-del-btn{
  position:absolute;top:0.28rem;right:0.28rem;
  width:1.35rem;height:1.35rem;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0.75rem;line-height:1;padding:0;margin:0;
}
.uft-person{position:relative}

/* Member card chips — full labels, balanced */
.uft-card-actions{display:flex;flex-direction:column;gap:0.3rem;margin-top:0.35rem;width:100%;min-width:0}
.uft-action-row{display:flex;flex-wrap:wrap;align-items:center;gap:0.28rem;width:100%}
.uft-status-row .uft-vital-btn,
.uft-status-row .uft-gender-btn,
.uft-status-row .uft-born-btn{
  flex:1 1 auto;min-width:0;max-width:100%;
  text-align:center;font-size:0.68rem!important;font-weight:700!important;
  padding:0.28rem 0.4rem!important;border-radius:999px!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.uft-nav-row{display:flex;flex-wrap:wrap;gap:0.28rem;width:100%}
.uft-nav-row .uft-focus-btn,
.uft-nav-row .uft-own-btn,
.uft-nav-row .uft-add-rel-btn{
  flex:1 1 auto;
  min-width:calc(33% - 0.3rem);
  height:auto!important;min-height:2rem;
  display:inline-flex!important;align-items:center;justify-content:center;
  font-size:0.68rem!important;font-weight:700!important;line-height:1.15!important;
  padding:0.35rem 0.4rem!important;margin:0!important;width:auto!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,0.14)!important;
  background:rgba(0,0,0,0.22)!important;color:#e8f0ea!important;
  box-shadow:none!important;white-space:nowrap;
}
.uft-nav-row .uft-add-rel-btn{
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  border-color:rgba(143,191,98,0.55)!important;
}
.uft-nav-row .uft-own-btn{
  background:rgba(212,180,90,0.18)!important;
  border-color:rgba(212,180,90,0.45)!important;
  color:#f0e6c8!important;
}
.uft-nav-row .uft-focus-btn{
  background:rgba(61,138,181,0.2)!important;
  border-color:rgba(61,138,181,0.4)!important;
}
.uft-person{position:relative}
.uft-person .uft-del-btn{
  position:absolute;top:0.28rem;right:0.28rem;
  width:1.35rem;height:1.35rem;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:0.75rem;line-height:1;padding:0;margin:0;z-index:2;
}
.uft-rel-menu{display:flex;flex-direction:column;gap:0.25rem}
.uft-rel-menu[hidden]{display:none!important}

/* Sleek member cards */
.uft-person.uft-card-sleek{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:0.35rem!important;padding:0.45rem 0.5rem 0.4rem!important;
  width:11.2rem!important;min-width:10.2rem!important;max-width:12.5rem!important;
  min-height:0!important;border-radius:14px!important;
  background:linear-gradient(160deg,rgba(20,40,32,0.92),rgba(12,28,22,0.88))!important;
  border:1px solid rgba(255,255,255,0.14)!important;
  box-shadow:0 4px 14px rgba(0,0,0,0.22)!important;
}
.uft-card-head{display:flex;align-items:center;gap:0.4rem;min-width:0;padding-right:1.1rem}
.uft-card-title{min-width:0;flex:1}
.uft-card-sleek .pn{font-size:0.78rem!important;font-weight:700!important;line-height:1.2!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.uft-card-sleek .pd{font-size:0.65rem!important;opacity:0.8;line-height:1.2;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.uft-card-sleek .uft-avatar{
  width:1.7rem!important;height:1.7rem!important;font-size:0.62rem!important;
  flex-shrink:0;border-radius:50%;
}
.uft-chip-row{
  display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;
  gap:0.2rem;width:100%;
}
.uft-chip{
  flex:1 1 0;min-width:0;height:1.7rem;padding:0!important;margin:0!important;
  display:inline-flex!important;align-items:center;justify-content:center;
  font-size:0.72rem!important;font-weight:700!important;line-height:1!important;
  border-radius:8px!important;border:1px solid rgba(255,255,255,0.12)!important;
  background:rgba(255,255,255,0.06)!important;color:#e8f0ea!important;
  cursor:pointer;width:auto!important;
}
.uft-chip.uft-add-rel-btn{
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  border-color:rgba(143,191,98,0.5)!important;
}
.uft-chip.uft-own-btn{
  background:rgba(212,180,90,0.2)!important;border-color:rgba(212,180,90,0.4)!important;
}
.uft-chip.uft-focus-btn{
  background:rgba(61,138,181,0.22)!important;border-color:rgba(61,138,181,0.4)!important;
}
.uft-chip.live,.uft-vital-btn.live{color:#7dff9a!important}
.uft-chip.dead,.uft-vital-btn.dead{color:#f0a0a0!important}
.uft-card-sleek .uft-del-btn{
  position:absolute;top:0.25rem;right:0.25rem;z-index:2;
  width:1.2rem;height:1.2rem;border-radius:999px;font-size:0.7rem;
  display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;
}
/* Legend */
.uft-chip-legend{
  display:flex;flex-wrap:wrap;gap:0.35rem 0.65rem;align-items:center;
  padding:0.4rem 0.55rem;margin:0.35rem 0 0.45rem;
  background:rgba(0,0,0,0.25);border:1px solid rgba(255,255,255,0.1);
  border-radius:12px;font-size:0.68rem;color:rgba(232,240,234,0.9);
}
.uft-leg-item{display:inline-flex;align-items:center;gap:0.25rem;white-space:nowrap}
.uft-leg-item i{font-style:normal;font-weight:700;opacity:0.95}
/* Own tree sibling band */
.uft-own-gen-label{font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--gold,#d4b45a);opacity:0.95}

/* Contain decorative tree inside pedigree stage only */
#uft-stage.uft-stage,.uft-stage{position:relative!important;overflow:auto!important;isolation:isolate;}
#uft-bg.uft-bg,
.uft-bg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-height:100%!important;
  pointer-events:none!important;
  z-index:0!important;
  opacity:0.4!important;
}
.uft-stage > .uft-wrap,
.uft-stage > .uft-chrome,
#uft-preview-wrap,
#uft-preview,
#uft-branch-wrap{
  position:relative;
  z-index:1;
}
/* Prevent tree art leaking into wasiyyah / tools below */
#user-family-tree-card{overflow:hidden}
#wasiyyah-card, #faraid-card, .card-wasiyyah{background:var(--card-bg, #0f1a16);position:relative;z-index:2}

/* Two-row compact chips */
.uft-chip-stack{display:flex;flex-direction:column;gap:0.22rem;width:100%;margin-top:0.15rem}
.uft-chip-row{
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  align-items:center;justify-content:space-between;gap:0.22rem;width:100%;
}
.uft-chip{
  flex:1 1 0;min-width:0;height:1.65rem!important;
  display:inline-flex!important;align-items:center;justify-content:center;
  padding:0!important;margin:0!important;width:auto!important;
  border-radius:8px!important;
  border:1.5px solid rgba(255,255,255,0.28)!important;
  background:rgba(0,0,0,0.28)!important;
  color:#f2f7f3!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,0.2);
  cursor:pointer;pointer-events:auto!important;
  -webkit-tap-highlight-color:transparent;
}
.uft-chip-ico{font-size:0.78rem;line-height:1;pointer-events:none}
.uft-chip.live,.uft-vital-btn.live{
  border-color:rgba(80,220,140,0.65)!important;
  background:rgba(20,80,50,0.55)!important;
  color:#b8ffd0!important;
}
.uft-chip.dead,.uft-vital-btn.dead{
  border-color:rgba(220,120,120,0.55)!important;
  background:rgba(80,30,30,0.45)!important;
  color:#ffc9c9!important;
}
.uft-chip.uft-own-btn, .uft-leg-chip.own{
  border-color:rgba(212,180,90,0.55)!important;
  background:rgba(80,60,20,0.4)!important;
}
.uft-chip.uft-focus-btn{
  border-color:rgba(100,170,220,0.5)!important;
  background:rgba(30,60,90,0.45)!important;
}
.uft-chip.uft-add-rel-btn, .uft-leg-chip.add{
  border-color:rgba(143,191,98,0.65)!important;
  background:linear-gradient(135deg,#1a6b52,#0f4c3a)!important;
  color:#fff!important;font-weight:800;
}
/* Legend outlined chips */
.uft-chip-legend{
  display:flex;flex-wrap:wrap;gap:0.35rem 0.55rem;align-items:center;
  padding:0.4rem 0.5rem;margin:0.3rem 0 0.4rem;
  background:rgba(0,0,0,0.28);border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;font-size:0.66rem;color:rgba(232,240,234,0.92);
}
.uft-leg-item{display:inline-flex;align-items:center;gap:0.28rem;white-space:nowrap}
.uft-leg-chip{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:1.35rem;height:1.25rem;padding:0 0.28rem;
  border-radius:6px;border:1.5px solid rgba(255,255,255,0.3);
  background:rgba(0,0,0,0.3);font-size:0.7rem;line-height:1;
}
.uft-leg-chip.live{border-color:rgba(80,220,140,0.65);color:#b8ffd0}
.uft-leg-chip.dead{border-color:rgba(220,120,120,0.55);color:#ffc9c9}
.uft-person.uft-card-sleek{padding:0.4rem 0.45rem 0.35rem!important;width:10.8rem!important;min-width:10rem!important;max-width:12rem!important}

/* Clarity tool tutorials & tab disclaimers */
.clarity-tool-tutorial summary::-webkit-details-marker{display:none}
.clarity-tool-tutorial summary::before{content:"▸ ";opacity:.7}
.clarity-tool-tutorial[open] summary::before{content:"▾ "}
.clarity-tool-tutorial li{margin:.15rem 0}
.clarity-tab-disclaimer strong{color:var(--gold,#d4b45a)}
html[data-theme="light"] .clarity-tab-disclaimer{background:rgba(180,140,40,.08);color:#3a3a2a}

.hadith-grade-pill.grade-sahih{color:#b8ffd0;border-color:rgba(80,220,140,.5)!important}
.hadith-grade-pill.grade-hasan{color:#ffe6a0}
.hadith-grade-pill.grade-daif{color:#ffb0b0}
.spk-orient{display:inline;font-size:.72rem;opacity:.85;margin-left:.15rem}
.spk-orient::before{content:" · ";opacity:.5}
.lecture-section-label{opacity:.95}
.urdu-lectures-drawer summary::-webkit-details-marker{display:none}

.fiqh-path-wizard{margin:.5rem 0 .75rem;padding:.55rem .7rem;border-radius:14px;border:1px solid rgba(143,191,98,.3);background:rgba(0,0,0,.18)}
.fiqh-path-title{font-weight:700;color:var(--gold,#d4b45a);font-size:.9rem;margin-bottom:.35rem}
.fiqh-path-sub{font-weight:500;opacity:.85;font-size:.75rem}
.fiqh-path-checklist{margin:.4rem 0 0;padding-left:1.15rem;font-size:.8rem;line-height:1.45}
.fiqh-path-checklist li{opacity:.75;margin:.15rem 0}
.fiqh-path-checklist li.on{opacity:1;color:var(--gold,#d4b45a);font-weight:600}
.fiqh-step-btn.on{border-color:rgba(212,180,90,.6)!important;background:rgba(212,180,90,.15)!important}
.fiqh-path-hint{font-size:.78rem;margin:.4rem 0 0;opacity:.9}
.fiqh-path-focus{box-shadow:0 0 0 2px rgba(212,180,90,.45),0 8px 28px rgba(0,0,0,.2)!important;transition:box-shadow .25s ease}
.mv-chip[onclick*="Tweet"],.mv-chip[onclick*="Auto-scale"],.mv-chip[onclick*="Final draft"]{border-color:rgba(143,191,98,.4)}

/* 🏛 FORCED DESKTOP 3-GATE ARCHITECTURE RULES */

/* Gate selection — compact popup portal (mobile-safe) */
.gate-overlay{
  position:fixed;inset:0;width:100%;height:100%;
  background:rgba(8,16,12,.55) !important;
  z-index:10000;
  overflow-y:auto;-webkit-overflow-scrolling:touch;
  display:flex !important;justify-content:center;align-items:center;
  padding:max(0.75rem, env(safe-area-inset-top)) 0.75rem max(0.85rem, env(safe-area-inset-bottom));
  box-sizing:border-box;
  backdrop-filter:blur(6px);
}
.gate-overlay.hidden{display:none !important}
.gate-container{
  width:min(420px,94vw) !important;margin:0 auto;
  background:#fffdf8;border:1px solid #e1dacb;border-radius:18px;
  padding:1.1rem 1rem 1.15rem;box-shadow:0 20px 50px rgba(0,0,0,.28);
  max-height:min(88vh,740px);overflow-y:auto;box-sizing:border-box;
}
html[data-theme="dark"] .gate-container{background:#152019;border-color:#2a3830}
.gate-header{text-align:center;margin-bottom:0.85rem !important}
.gate-logo{font-size:0.95rem !important;font-weight:bold;letter-spacing:3px;color:#0d4f3c;display:block;margin-bottom:0.35rem}
.gate-header h1{font-size:1.2rem !important;margin:0.25rem 0;line-height:1.3;color:#0d4f3c}
.gate-header p{font-size:0.84rem !important;color:#4a554f;margin:0.25rem 0 0;line-height:1.4}
.gate-grid{
  display:grid !important;
  grid-template-columns:1fr !important; /* stack on all sizes inside popup */
  gap:0.55rem !important;margin-bottom:0.75rem !important;
}
.gate-card{
  background:#f7faf8;border:1.5px solid #e1dacb;border-radius:12px;
  padding:0.85rem 0.9rem !important;text-align:left;cursor:pointer;
  display:flex;flex-direction:column;align-items:flex-start;
  height:auto !important;box-sizing:border-box;
  transition:border-color 0.15s,background 0.15s;
}
html[data-theme="dark"] .gate-card{background:#1a2a22;border-color:#2a3830}
.gate-card:hover{transform:none;border-color:#0d4f3c;box-shadow:none;background:#eef6f1}
.gate-icon{
  font-size:1.35rem !important;margin-bottom:0.35rem !important;
  background:#e6f0ec;width:2.4rem;height:2.4rem;display:flex;align-items:center;justify-content:center;border-radius:50%;
}
.gate-card h2{font-size:1.05rem !important;margin:0 0 0.3rem 0 !important;color:#0d4f3c;font-family:Georgia,serif}
.gate-card p{font-size:0.8rem !important;color:#4a554f;margin:0 0 0.45rem 0 !important;line-height:1.4}
.gate-action{font-weight:bold;color:#0d4f3c;font-size:0.82rem !important}

.global-nav {
  display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap;
  background:#fffdf8; padding:10px 14px; border-bottom:1px solid #e1dacb;
  position:sticky; top:0; z-index:999; width:100%; max-width:100%;
  margin:0 auto; box-sizing:border-box;
}
.mode-badge { background: #e6f0ec; color: #0d4f3c; padding: 5px 12px; border-radius: 20px; font-size: 0.75rem; font-weight: bold; text-transform: uppercase; margin-left: 12px; }
.nav-buttons button { background: none; border: 1px solid #e1dacb; padding: 8px 16px; border-radius: 6px; cursor: pointer; margin-left: 8px; color: #1c2a22; font-weight: 500; }
.nav-buttons button:hover { background: #f6f1e7; border-color: #0d4f3c; }
.quiz-option-btn { display: block; width: 100%; text-align: left; background: #fffdf8; border: 1px solid #e1dacb; padding: 12px 16px; border-radius: 6px; margin-top: 8px; cursor: pointer; color: #1c2a22; font-size: 0.95rem; }
.quiz-option-btn:hover { background: #f6f1e7; border-color: #0d4f3c; }
.score-panel { display: flex; justify-content: space-between; background: #f6f1e7; padding: 12px; border-radius: 6px; margin-bottom: 12px; font-size: 0.85rem; font-weight: bold; border: 1px solid #e1dacb; }
.hidden { display: none !important; }

/* ===== Clarity Learning OS — Paths, Daily Micro-Lesson, Dashboard ===== */
.clarity-learn-os{max-width:1140px;margin:0 auto 1.25rem;padding:0 .75rem}
.clarity-dashboard{
  background:linear-gradient(145deg,#fffdf8,#f0f7f3);border:1px solid #e1dacb;border-radius:16px;
  padding:1.1rem 1.15rem;margin:0 0 1rem;box-shadow:0 4px 18px rgba(13,79,60,.06)
}
html[data-theme="dark"] .clarity-dashboard{background:linear-gradient(145deg,#152019,#1a2e24);border-color:#2a3830}
.cd-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.85rem}
.cd-head h2{margin:0;font-family:Georgia,'Cormorant Garamond',serif;font-size:1.35rem;color:#0d4f3c}
html[data-theme="dark"] .cd-head h2{color:#6bc49a}
.cd-track-pill{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  background:#e6f0ec;color:#0d4f3c;padding:.28rem .7rem;border-radius:999px}
.cd-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.55rem}
@media(min-width:640px){.cd-grid{grid-template-columns:repeat(4,1fr)}}
.cd-stat{background:rgba(255,255,255,.75);border:1px solid #e1dacb;border-radius:12px;padding:.65rem;text-align:center}
html[data-theme="dark"] .cd-stat{background:rgba(30,40,34,.85);border-color:#2a3830}
.cd-stat .v{display:block;font-size:1.35rem;font-weight:700;color:#0d4f3c}
html[data-theme="dark"] .cd-stat .v{color:#6bc49a}
.cd-stat .l{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:#5a6358}
.cd-continue{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.cd-continue button{margin:0}
.daily-micro-card{
  background:linear-gradient(135deg,#0d4f3c,#1a6b52);color:#f7f3eb;border-radius:16px;padding:1.15rem 1.2rem;
  margin:0 0 1rem;box-shadow:0 8px 28px rgba(13,79,60,.22)
}
.daily-micro-card .dm-kicker{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.85;margin-bottom:.25rem}
.daily-micro-card h3{margin:0 0 .5rem;font-family:Georgia,serif;font-size:1.25rem;font-weight:600}
.daily-micro-card .dm-verse{font-family:'Scheherazade New',Amiri,serif;direction:rtl;font-size:1.35rem;line-height:1.9;margin:.4rem 0}
.daily-micro-card .dm-en{font-size:.95rem;opacity:.95;line-height:1.5;margin:.35rem 0}
.daily-micro-card .dm-action{background:rgba(255,255,255,.15);border-radius:10px;padding:.65rem .8rem;margin-top:.65rem;font-size:.9rem}
.daily-micro-card .dm-actions-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}
.daily-micro-card button{margin:0;background:#fff;color:#0d4f3c;border:none;font-weight:600;padding:.45rem .85rem;border-radius:999px;cursor:pointer}
.daily-micro-card button.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45)}
.path-board{display:grid;grid-template-columns:1fr;gap:.85rem;margin:0 0 1.2rem}
@media(min-width:800px){.path-board{grid-template-columns:1fr 1fr}}
.path-card{
  background:#fffdf8;border:1px solid #e1dacb;border-radius:14px;padding:1rem 1.05rem;
  border-left:4px solid #0d4f3c
}
html[data-theme="dark"] .path-card{background:#152019;border-color:#2a3830}
.path-card h3{margin:0 0 .35rem;font-size:1.1rem;color:#0d4f3c;font-family:Georgia,serif}
html[data-theme="dark"] .path-card h3{color:#6bc49a}
.path-card .path-meta{font-size:.78rem;color:#5a6358;margin-bottom:.55rem}
.path-mods{list-style:none;margin:0;padding:0}
.path-mods li{
  display:flex;align-items:flex-start;gap:.5rem;padding:.4rem 0;border-bottom:1px solid rgba(0,0,0,.06);
  font-size:.88rem;cursor:pointer
}
.path-mods li:last-child{border-bottom:none}
.path-mods li.done{opacity:.65;text-decoration:line-through}
.path-mods .mod-check{flex-shrink:0;width:1.15rem;height:1.15rem;margin-top:.1rem;accent-color:#0d4f3c}
.path-mods .mod-time{font-size:.72rem;color:#5a6358;white-space:nowrap}
.path-prog{height:.45rem;background:#e6f0ec;border-radius:999px;overflow:hidden;margin:.55rem 0}
.path-prog .fill{height:100%;background:#0d4f3c;width:0%;transition:width .35s ease}
.evidence-box{
  margin:.75rem 0;padding:.7rem .85rem;border-radius:10px;border:1px solid rgba(184,146,42,.35);
  background:rgba(184,146,42,.08);font-size:.86rem;line-height:1.45
}
.evidence-box strong{color:#8a5a00;display:block;margin-bottom:.25rem}
html[data-theme="dark"] .evidence-box{background:rgba(212,180,90,.1);border-color:rgba(212,180,90,.3)}
.placement-panel{
  background:#fffdf8;border:2px solid #0d4f3c;border-radius:16px;padding:1.25rem;max-width:520px;margin:1rem auto;
  box-shadow:0 12px 40px rgba(0,0,0,.12)
}
html[data-theme="dark"] .placement-panel{background:#152019;border-color:#3d9b78}
.placement-panel h3{margin:0 0 .5rem;color:#0d4f3c;font-family:Georgia,serif}
.sr-queue{font-size:.82rem;color:#5a6358;margin-top:.5rem}
.cert-banner{
  display:none;background:linear-gradient(135deg,#f8f0e0,#e8f5ec);border:1px solid #d4b45a;border-radius:12px;
  padding:.85rem 1rem;margin:.75rem 0;text-align:center
}
.cert-banner.show{display:block}

/* ===== Vertical door-rail — wider touch chips with full names ===== */
#clarity-door-rail{
  position:fixed;left:0;top:50%;transform:translateY(-50%);
  z-index:1200;display:flex;flex-direction:column;gap:.4rem;
  padding:.55rem .45rem .55rem .4rem;
  background:rgba(13,79,60,.95);border-radius:0 16px 16px 0;
  box-shadow:6px 0 24px rgba(0,0,0,.2);max-height:90vh;overflow-y:auto;
  backdrop-filter:blur(10px);min-width:7.5rem;
}
#clarity-door-rail.rail-hidden{display:none !important}
.door-rail-btn{
  display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.45rem;
  width:100%;min-width:7.2rem;min-height:2.85rem;padding:.55rem .65rem;
  border:1px solid rgba(255,255,255,.25);border-radius:12px;
  background:rgba(255,255,255,.12);color:#f7f3eb;cursor:pointer;
  font-size:.78rem;font-weight:700;line-height:1.2;text-align:left;
  transition:background .15s,transform .15s;margin:0;white-space:nowrap;
}
.door-rail-btn .dr-ico{font-size:1.15rem;line-height:1;flex-shrink:0}
.door-rail-btn .dr-label{flex:1;font-size:.78rem;letter-spacing:.01em}
.door-rail-btn:hover{background:rgba(255,255,255,.24);transform:translateX(3px)}
.door-rail-btn.active{background:#f7f3eb;color:#0d4f3c;border-color:#f7f3eb}
.door-rail-home{
  background:rgba(212,180,90,.4);border-color:rgba(212,180,90,.75);color:#fff;
}
.door-rail-home:hover{background:rgba(212,180,90,.58)}
.door-rail-lab{opacity:.85;font-size:.72rem;border-style:dashed}
html[data-section-mode="1"] #clarity-learn-os .path-board{display:none !important}
body.section-open .page-wrapper{padding-left:8.2rem}
@media(max-width:700px){
  #clarity-door-rail{
    top:auto;bottom:calc(3.6rem + env(safe-area-inset-bottom,0px));transform:none;
    flex-direction:row;left:0;right:0;translate:none;
    border-radius:14px 14px 0 0;max-width:100%;width:100%;
    padding:.35rem .4rem;max-height:none;overflow-x:auto;min-width:0;
    justify-content:flex-start;gap:.3rem;
  }
  .door-rail-btn{min-width:5.5rem;width:auto;min-height:2.7rem;padding:.45rem .55rem;font-size:.72rem}
  body.section-open .page-wrapper{padding-left:.45rem;padding-bottom:6.2rem}
}
html.door-rail-on .nav-tabs{display:none !important}
html.door-rail-on .mobile-bottom-nav{display:none !important}

/* Content buffer — keep text clear of left door-rail */
html.door-rail-on body.section-open .page-wrapper,
html.door-rail-on body.section-open #main-content,
html.door-rail-on #main-application-workspace{
  box-sizing:border-box;
}
html.door-rail-on #main-application-workspace{
  padding-left:max(0.5rem, calc(7.8rem + 0.35rem));
}
html.door-rail-on .banner,
html.door-rail-on #clarity-oath-strip,
html.door-rail-on #clarity-learn-os,
html.door-rail-on #clarity-today-surface,
html.door-rail-on .page-wrapper,
html.door-rail-on #main-content,
html.door-rail-on .tab-panel{
  padding-left:0.15rem;
}
html.door-rail-on .global-nav{
  width:auto;max-width:100%;margin-left:max(0.5rem, 7.8rem);margin-right:0.5rem;
  box-sizing:border-box;
}
/* Main view chip emphasis */
#door-rail-main-view.active,
#door-rail-main-view:focus{
  background:#f0d78c !important;color:#0d4f3c !important;border-color:#f0d78c !important;
}
@media(max-width:700px){
  html.door-rail-on #main-application-workspace{
    padding-left:0.55rem;
    padding-bottom:calc(5.5rem + env(safe-area-inset-bottom,0px));
  }
  html.door-rail-on .global-nav{
    margin-left:0.35rem;margin-right:0.35rem;width:auto;
    flex-wrap:wrap;font-size:0.8rem;
  }
  /* Bottom rail — content not covered by horizontal chip row */
  html.door-rail-on #clarity-door-rail{
    z-index:1200;
  }
}
/* Ensure path cards and daily card use full remaining width */
html.door-rail-on .path-card,
html.door-rail-on .daily-micro-card,
html.door-rail-on .clarity-dashboard,
html.door-rail-on .today-card{
  max-width:100%;
  box-sizing:border-box;
}

@media(max-width:700px){
  html.door-rail-on .mobile-bottom-nav{display:none !important}
}
/* Three primary doors + Today surface */

/* Three doors — compact popup (not full-page) */
#clarity-three-doors{
  position:fixed;inset:0;z-index:10050;
  background:rgba(8,16,12,.55);
  display:flex;align-items:center;justify-content:center;
  padding:max(0.75rem, env(safe-area-inset-top)) 0.85rem max(0.85rem, env(safe-area-inset-bottom));
  overflow-y:auto;-webkit-overflow-scrolling:touch;
  backdrop-filter:blur(6px);
}
html[data-theme="dark"] #clarity-three-doors{background:rgba(0,0,0,.65)}
#clarity-three-doors.hidden{display:none !important}
.td-wrap{
  width:min(420px,94vw);margin:auto;padding:1.15rem 1.1rem 1.2rem;
  background:#fffdf8;border:1px solid #e1dacb;border-radius:18px;
  box-shadow:0 20px 50px rgba(0,0,0,.28);max-height:min(88vh,720px);overflow-y:auto;
}
html[data-theme="dark"] .td-wrap{background:#152019;border-color:#2a3830}
.td-brand{text-align:center;margin-bottom:0.85rem}
.td-brand .td-logo{font-size:0.95rem;font-weight:800;letter-spacing:.12em;color:#0d4f3c}
html[data-theme="dark"] .td-brand .td-logo{color:#6bc49a}
.td-brand h1{
  font-family:Georgia,'Cormorant Garamond',serif;font-size:1.25rem;
  color:#0d4f3c;margin:.3rem 0 .25rem;line-height:1.25
}
html[data-theme="dark"] .td-brand h1{color:#8fd4a0}
.td-brand p{color:#4a554f;font-size:0.84rem;margin:.25rem auto 0;line-height:1.45}
html[data-theme="dark"] .td-brand p{color:#9aab9f}
.td-sub{font-size:0.75rem;color:#5a6358;margin-top:.35rem !important}
.td-grid{display:grid;grid-template-columns:1fr;gap:0.55rem}
.td-card{
  background:#f7faf8;border:1.5px solid #e1dacb;border-radius:12px;
  padding:0.85rem 0.9rem;cursor:pointer;text-align:left;
  transition:border-color .15s,background .15s;min-height:0;
  display:flex;flex-direction:column;-webkit-tap-highlight-color:transparent;
}
html[data-theme="dark"] .td-card{background:#1a2a22;border-color:#2a3830}
.td-card:active{transform:scale(0.99)}
.td-card:hover{border-color:#0d4f3c;background:#eef6f1}
.td-card .td-ico{font-size:1.35rem;margin-bottom:.2rem;line-height:1}
.td-card h2{margin:0 0 .2rem;font-size:1.05rem;color:#0d4f3c;font-family:Georgia,serif}
html[data-theme="dark"] .td-card h2{color:#6bc49a}
.td-card p{margin:0;flex:1;font-size:0.8rem;color:#4a554f;line-height:1.4}
html[data-theme="dark"] .td-card p{color:#9aab9f}
.td-card .td-go{margin-top:.45rem;font-weight:700;color:#0d4f3c;font-size:0.82rem}
html[data-theme="dark"] .td-card .td-go{color:#8fd4a0}
.td-foot{text-align:center;margin-top:0.75rem;font-size:0.72rem;color:#5a6358;line-height:1.35}
@media(max-width:719px){
  .td-card{padding:1.05rem 1rem 1.1rem;border-width:2px}
  .td-card .td-go{min-height:2.5rem;align-items:center}
}

/* legacy three-doors base overridden above */
#clarity-three-doors-legacy-ignore{
  position:fixed;inset:0;z-index:10050;background:#f6f1e7;
  display:flex;align-items:center;justify-content:center;padding:1.25rem;
  overflow-y:auto;
}
#clarity-three-doors.hidden{display:none !important}
html[data-theme="dark"] #clarity-three-doors{background:#0c1410}
.td-wrap{width:min(960px,100%);margin:0 auto}
.td-brand{text-align:center;margin-bottom:1.25rem}
.td-brand .td-logo{font-size:1.35rem;font-weight:800;letter-spacing:.12em;color:#0d4f3c}
.td-brand h1{font-family:Georgia,serif;font-size:1.55rem;color:#0d4f3c;margin:.35rem 0}
.td-brand p{color:#4a554f;font-size:.95rem;max-width:36rem;margin:.35rem auto 0;line-height:1.45}
.td-sub{font-size:.82rem;color:#5a6358;margin-top:.5rem}
.td-grid{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:720px){.td-grid{grid-template-columns:repeat(3,1fr)}}
.td-card{
  background:#fffdf8;border:2px solid #e1dacb;border-radius:16px;padding:1.35rem 1.2rem;
  cursor:pointer;text-align:left;transition:transform .15s,border-color .15s;min-height:11rem;
  display:flex;flex-direction:column;
}
.td-card:hover{transform:translateY(-4px);border-color:#0d4f3c;box-shadow:0 12px 28px rgba(13,79,60,.08)}
.td-card .td-ico{font-size:2rem;margin-bottom:.65rem}
.td-card h2{margin:0 0 .4rem;font-size:1.25rem;color:#0d4f3c;font-family:Georgia,serif}
.td-card p{margin:0;flex:1;font-size:.9rem;color:#4a554f;line-height:1.45}
.td-card .td-go{margin-top:.85rem;font-weight:700;color:#0d4f3c;font-size:.88rem}
.td-foot{text-align:center;margin-top:1.25rem;font-size:.8rem;color:#5a6358}
#clarity-today-surface{
  max-width:720px;margin:0 auto 1rem;padding:0 .75rem;
}
.today-card{
  background:linear-gradient(145deg,#0d4f3c,#1a6b52);color:#f7f3eb;border-radius:16px;
  padding:1.15rem 1.2rem;box-shadow:0 8px 28px rgba(13,79,60,.2)
}
.today-card h2{margin:0 0 .65rem;font-size:1.2rem;font-family:Georgia,serif}
.today-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.65rem}
.today-pill{background:rgba(255,255,255,.15);padding:.35rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600}
.today-deed{margin:.5rem 0;font-size:.95rem}
.today-actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}
.today-actions button{margin:0;background:#fff;color:#0d4f3c;border:none;font-weight:700;padding:.5rem .9rem;border-radius:999px;cursor:pointer}
.today-actions button.ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
.cred-stamp{
  font-size:.75rem;color:#5a6358;border-left:3px solid #b8922a;padding:.4rem .65rem;
  margin:.65rem 0;background:rgba(184,146,42,.08);border-radius:0 8px 8px 0;line-height:1.4
}
.domain-promise{
  text-align:center;font-size:.8rem;color:#5a6358;padding:.35rem .75rem;margin:.25rem auto .5rem;max-width:40rem
}
.path-day-list{list-style:none;margin:.5rem 0 0;padding:0}
.path-day-list li{
  display:flex;align-items:flex-start;gap:.5rem;padding:.45rem 0;border-bottom:1px solid rgba(0,0,0,.06);
  font-size:.88rem
}
.path-day-list li.done{opacity:.65}
.lab-only{display:none !important}
html.show-lab .lab-only{display:block !important}
html.show-lab .door-rail-lab{opacity:1}
/* Banner stays at top; oath + learning OS flow under it */
.banner{position:relative;z-index:50}
#clarity-oath-strip.clarity-oath-strip{
  max-width:1140px;margin:.75rem auto 0;padding:0 .75rem;
}
.oath-details{
  background:linear-gradient(145deg,#fffdf8,#f3faf6);border:1px solid #e1dacb;border-radius:14px;
  padding:.35rem .85rem .55rem;color:#1c2a22
}
html[data-theme="dark"] .oath-details{background:#152019;border-color:#2a3830;color:#e7efe9}
.oath-details summary{
  cursor:pointer;font-weight:600;color:#0d4f3c;padding:.4rem 0;list-style:none;
  font-family:Inter,system-ui,sans-serif;font-size:.9rem
}
html[data-theme="dark"] .oath-details summary{color:#6bc49a}
.oath-details summary::-webkit-details-marker{display:none}
.oath-body{padding:.25rem 0 .4rem;font-size:.92rem;line-height:1.55}
.oath-ar{font-size:1.15rem;text-align:center;margin:.4rem 0}
.oath-note{font-size:.82rem;color:#5a6358;margin:.35rem 0}
.oath-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.45rem}
.oath-status{font-size:.82rem;color:#0d4f3c;font-weight:600}
html[data-theme="dark"] .oath-status{color:#6bc49a}
/* Path card active state */
.path-card.is-active{outline:2px solid #0d4f3c;box-shadow:0 0 0 4px rgba(13,79,60,.12)}

/* ===== Track OS: active expands, others collapse to switch bar ===== */
.path-board.path-board-managed{
  display:flex !important;flex-direction:column;gap:.75rem;
  margin:.15rem 0 1.1rem;width:100%;
}
.path-board.path-board-managed[hidden]{display:none !important}
.path-switch-bar{
  display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;
  background:var(--card-bg,#152019);border:1px solid var(--border,rgba(212,180,90,.28));
  border-radius:14px;padding:.55rem .75rem;box-shadow:var(--shadow);
}
.path-switch-bar .psb-label{
  font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;
  color:var(--text-muted,#9bb5a8);margin-right:.15rem;
}
.path-switch-bar select.path-switch-select{
  appearance:none;-webkit-appearance:none;
  background:rgba(15,76,58,.92);color:#e8f2ec;
  border:1px solid rgba(212,180,90,.45);border-radius:999px;
  padding:.38rem 2rem .38rem .8rem;font-size:.78rem;font-weight:600;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23d4b45a' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right .7rem center;
  min-width:12rem;max-width:100%;cursor:pointer;
}
html[data-theme="light"] .path-switch-bar select.path-switch-select{background:#0d4f3c;color:#f4fff8}
.path-switch-bar .psb-hint{font-size:.72rem;color:var(--text-muted);flex:1;min-width:8rem}
.path-card-active{
  grid-column:1/-1;border:1px solid rgba(31,166,122,.45);
  background:linear-gradient(160deg,rgba(15,76,58,.12),rgba(20,40,32,.06));
  border-radius:16px;padding:1rem 1.05rem 1.1rem;box-shadow:0 6px 22px rgba(0,0,0,.12);
}
html[data-theme="dark"] .path-card-active{
  background:linear-gradient(160deg,rgba(31,166,122,.14),rgba(20,30,25,.9));
  border-color:rgba(61,155,114,.4);
}
.path-card-active .pca-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.55rem;margin-bottom:.55rem}
.path-card-active h3{margin:0;font-size:1.2rem;color:var(--accent,#1fa67a);font-family:Georgia,'Cormorant Garamond',serif}
.path-card-active .pca-badge{
  display:inline-flex;align-items:center;gap:.3rem;
  background:rgba(31,166,122,.18);color:var(--accent);border:1px solid rgba(31,166,122,.35);
  border-radius:999px;padding:.2rem .65rem;font-size:.72rem;font-weight:700;
}
.path-card-active .path-meta{font-size:.84rem;color:var(--text-muted);margin:.15rem 0 .55rem;line-height:1.4}
.path-routine-stats{display:flex;flex-wrap:wrap;gap:.45rem;margin:.35rem 0 .7rem}
.path-routine-stats .prs{
  background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:10px;
  padding:.35rem .65rem;font-size:.78rem;
}
.path-routine-stats .prs strong{font-variant-numeric:tabular-nums;color:var(--accent)}
.path-next-routine{
  background:rgba(212,180,90,.12);border:1px solid rgba(212,180,90,.35);
  border-radius:12px;padding:.65rem .8rem;margin:0 0 .75rem;
}
.path-next-routine .pnr-kicker{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#b0892e;margin-bottom:.2rem}
.path-next-routine .pnr-title{font-weight:650;font-size:.95rem;margin-bottom:.25rem}
.path-next-routine .pnr-btns{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}
.path-mods-active{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}
.path-mods-active li{
  display:flex;flex-wrap:wrap;align-items:flex-start;gap:.45rem;
  background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:12px;
  padding:.55rem .65rem;cursor:default;
}
.path-mods-active li.done{opacity:.72;border-color:rgba(31,166,122,.35)}
.path-mods-active li.next-up{border-color:rgba(212,180,90,.55);box-shadow:0 0 0 2px rgba(212,180,90,.12)}
.path-mods-active li.locked{opacity:.55}
.path-mods-active .mod-body{flex:1;min-width:12rem}
.path-mods-active .mod-title{font-weight:600;font-size:.9rem}
.path-mods-active .mod-action{font-size:.78rem;color:var(--text-muted);margin-top:.15rem;line-height:1.35}
.path-mods-active .mod-links{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}
.path-mods-active .mod-links a,.path-mods-active .mod-links button{
  font-size:.72rem;padding:.22rem .55rem;border-radius:999px;border:1px solid var(--border);
  background:rgba(31,166,122,.12);color:var(--accent);cursor:pointer;text-decoration:none;font-weight:600;
  margin:0;
}
.path-mods-active .mod-time{font-size:.72rem;color:var(--text-muted);white-space:nowrap}
.path-mods-active input.mod-check{width:1.1rem;height:1.1rem;margin-top:.15rem;accent-color:var(--accent);flex-shrink:0}
@media(max-width:720px){
  .path-switch-bar{flex-direction:column;align-items:stretch}
  .path-switch-bar select.path-switch-select{width:100%;min-width:0}
  .path-next-routine .pnr-btns .btn,.path-next-routine .pnr-btns .btn-soft{width:100%;text-align:center}
}

html[data-theme="dark"] .path-card.is-active{outline-color:#3d9b78}

.cert-banner strong{color:#0d4f3c}

html.door-rail-on .tab-panel.active,html.door-rail-on #main-content{scroll-margin-top:4.5rem;scroll-margin-left:8rem}

/* CLARITY_RESPONSIVE_LAYOUT */

/* door-rail-extra hide removed — all 10 chips always visible */

html, body { max-width: 100%; overflow-x: hidden; }
#main-application-workspace {
  width: 100%; max-width: 100%; box-sizing: border-box; margin: 0 auto;
  padding-left: 0.5rem; padding-right: 0.5rem;
}
@media (min-width: 901px) {
  html.door-rail-on #main-application-workspace {
    padding-left: max(0.75rem, 8.2rem); padding-right: 1rem;
    max-width: 1400px; margin-left: auto; margin-right: auto;
  }
  html.door-rail-on .global-nav {
    max-width: 1400px; margin-left: auto; margin-right: auto;
    padding-left: max(0.75rem, 8.2rem);
  }
}
@media (max-width: 900px) {
  html.door-rail-on #main-application-workspace {
    padding-left: 0.65rem !important; padding-right: 0.65rem !important;
  }
  html.door-rail-on .global-nav {
    margin-left: 0 !important; margin-right: 0 !important;
    width: 100% !important; padding-left: 0.5rem !important;
  }
  #clarity-door-rail {
    top: auto !important;
    bottom: calc(0.35rem + env(safe-area-inset-bottom, 0px)) !important;
    left: 0 !important; right: 0 !important; transform: none !important;
    flex-direction: row !important; width: 100% !important; max-width: 100% !important;
    min-width: 0 !important; border-radius: 14px 14px 0 0 !important;
    overflow-x: auto !important; overflow-y: hidden !important;
    max-height: none !important; padding: 0.35rem 0.4rem !important;
  }
  body.section-open .page-wrapper,
  html.door-rail-on #main-application-workspace {
    padding-bottom: calc(4.5rem + env(safe-area-inset-bottom, 0px));
  }
}
.clarity-learn-os, #clarity-today-surface, .path-board, .clarity-dashboard, .daily-micro-card {
  max-width: 960px; width: 100%; margin-left: auto; margin-right: auto; box-sizing: border-box;
}
@media (min-width: 1100px) { .path-board { max-width: 1100px; } }
.banner { width: 100%; max-width: 100%; box-sizing: border-box; }

/* Today journey plaque + growth tree */
.today-journey-plaque{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:0.75rem;margin:0 0 1rem;padding:0.85rem 0.9rem;border-radius:14px;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.18)}
.tjp-title{margin:0 0 0.4rem;font-size:1.15rem;font-family:Georgia,serif;color:#f0d78c}
.tjp-hint{font-size:0.78rem;opacity:0.85;margin:0 0 0.35rem}
.tjp-row{display:flex;flex-wrap:wrap;gap:0.35rem}
.tjp-row input{flex:1;min-width:8rem;padding:0.45rem 0.6rem;border-radius:10px;border:1px solid rgba(255,255,255,0.25);background:rgba(0,0,0,0.2);color:#f7f3eb}
.tjp-save{margin:0;background:#f7f3eb;color:#0d4f3c;border:none;font-weight:700;padding:0.45rem 0.85rem;border-radius:999px;cursor:pointer}
.tjp-salam{font-size:1.2rem;font-weight:700;margin-bottom:0.25rem}
.tjp-stats{display:flex;flex-wrap:wrap;gap:0.5rem;font-size:0.8rem}
.deed-growth-tree{display:flex;flex-direction:column;align-items:center;min-width:100px;max-width:140px}
@media(max-width:600px){.deed-growth-tree{min-width:88px;max-width:110px}
.deed-growth-tree svg{width:96px;height:128px}}
.tjp-hint{font-size:.84rem;line-height:1.45;color:var(--text-muted);margin:0 0 .55rem}
.cw-track-kicker{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent,#0f4c3a);margin:0 0 .55rem;opacity:.9}
.cw-step-btn{cursor:pointer;width:100%;border:1px solid rgba(15,76,58,.12);background:rgba(15,76,58,.07);text-align:left;font:inherit;color:inherit}
.cw-step-btn:hover,.cw-step-btn:focus{border-color:var(--accent,#0f4c3a);background:rgba(15,76,58,.14);outline:none}
html[data-theme="dark"] .cw-step-btn{background:rgba(61,155,114,.12);border-color:rgba(61,155,114,.2);color:#e7efe9}
.cw-name-gate{margin:0 0 1rem;text-align:left;background:rgba(15,76,58,.06);border:1px dashed rgba(15,76,58,.25);border-radius:12px;padding:.75rem}
.cw-name-gate label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.35rem;color:var(--accent)}
.cw-name-gate input{width:100%;padding:.55rem .7rem;border-radius:10px;border:1px solid var(--border,#e5ddd0);font-size:.95rem;margin-bottom:.45rem}
html[data-theme="dark"] .cw-name-gate input{background:#152019;color:#e7efe9;border-color:#2a3830}
.entry-name-spotlight{animation:entryPulse 1.2s ease 2}
@keyframes entryPulse{0%,100%{box-shadow:0 0 0 0 rgba(31,166,122,0)}50%{box-shadow:0 0 0 6px rgba(31,166,122,.2)}}

.dgt-caption{font-size:0.68rem;text-align:center;opacity:0.9;margin-top:0.15rem;color:#e8f0ea}
.today-deed .deed-kicker{display:block;font-size:0.72rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;opacity:0.8;margin-bottom:0.2rem}
.today-deed .deed-text{margin:0;font-size:0.95rem;line-height:1.45}
.notes-editor-pane.has-note #notes-editor-active{display:flex !important;flex-direction:column;flex:1;min-height:0;overflow:hidden}
.notes-body-area{flex:1;min-height:0;overflow:hidden !important}
.notes-body-input,textarea.notes-body-input,#notes-body{overflow-y:auto !important;-webkit-overflow-scrolling:touch;max-height:min(52vh,480px);min-height:180px;resize:vertical}
#notes-save-now,button.notes-save-now{display:inline-flex !important;align-items:center;background:var(--accent,#1fa67a) !important;color:var(--accent-fg,#061510) !important;font-weight:700;border:none;padding:0.5rem 1rem;border-radius:10px;cursor:pointer}
.notes-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:0.45rem;margin-top:0.5rem;padding-top:0.45rem;border-top:1px solid var(--border)}

@media (max-width: 900px) {
  .banner, #clarity-top-duo, .global-nav, nav.global-nav {
    position: relative !important;
    top: auto !important;
  }
  html, body {
    overflow-y: auto !important;
    height: auto !important;
  }
}
