:root{--bg:#0c1f1a;--bg-raised:#12291f;--bg-card:#16302a;--line:#d6b25e29;--ink:#f2ede2;--ink-dim:#b9c5bc;--ink-faint:#7d8f84;--gold:#d6b25e;--gold-soft:#d6b25e8c;--teal:#7fd6bb;--danger:#e08585;--serif:"Fraunces", Georgia, serif;--sans:"Inter", system-ui, sans-serif;--arabic:"Scheherazade New", "Amiri", serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{background:radial-gradient(120% 90% at 50% -10%, #17362c 0%, var(--bg) 58%), var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}.shell{flex-direction:column;max-width:430px;height:100%;margin:0 auto;display:flex}.screen{flex-direction:column;flex:1;padding:20px 20px 12px;display:flex;overflow-y:auto}.masthead{text-align:center;padding:10px 0 2px}.masthead .bismillah{font-family:var(--arabic);color:var(--gold);opacity:.9;font-size:22px;line-height:1.4}.masthead .wordmark{font-family:var(--serif);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);margin-top:2px;font-size:15px}.preview-ribbon{letter-spacing:.08em;text-transform:uppercase;color:#0c1f1a;background:var(--gold);border-radius:999px;width:fit-content;margin:10px auto 0;padding:4px 12px;font-size:11px;font-weight:600}.talk{justify-content:flex-start;align-items:center;gap:14px}.orb-zone{flex-direction:column;align-items:center;gap:14px;margin-top:18px;display:flex}.orb{--ring:var(--gold-soft);border:1.5px solid var(--ring);background:radial-gradient(60% 60% at 50% 38%, #d6b25e2e, transparent 70%), var(--bg-card);width:168px;height:168px;color:var(--ink);font-family:var(--serif);cursor:pointer;border-radius:50%;font-size:17px;transition:transform .15s,border-color .3s;position:relative}.orb:active{transform:scale(.97)}.orb:before,.orb:after{content:"";border:1px solid var(--ring);opacity:0;border-radius:50%;position:absolute;inset:-14px}.orb.listening{--ring:var(--teal)}.orb.listening:before{animation:1.6s ease-out infinite ripple}.orb.listening:after{animation:1.6s ease-out .8s infinite ripple}.orb.speaking{--ring:var(--gold)}.orb.speaking:before{animation:2.2s ease-out infinite ripple}.orb.thinking{--ring:var(--ink-faint)}@keyframes ripple{0%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.22)}}.orb-state{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);min-height:15px;font-size:12px}.transcript{flex-direction:column;flex:1;gap:10px;width:100%;min-height:120px;padding:4px 2px 8px;display:flex}.bubble{border-radius:16px;max-width:88%;padding:12px 15px;font-size:15px;line-height:1.55}.bubble.user{background:var(--bg-raised);color:var(--ink-dim);border:1px solid #ffffff0d;align-self:flex-end}.bubble.hakim{background:var(--bg-card);border:1px solid var(--line);align-self:flex-start}.bubble.hakim .cite{color:var(--gold);margin-top:8px;font-size:12.5px;font-style:italic;display:block}.typebar{gap:8px;width:100%;padding-bottom:6px;display:flex}.typebar input{background:var(--bg-raised);border:1px solid var(--line);color:var(--ink);font-size:15px;font-family:var(--sans);border-radius:12px;flex:1;padding:11px 14px}.typebar input::placeholder{color:var(--ink-faint)}.typebar button{background:var(--gold);color:#0c1f1a;cursor:pointer;border:0;border-radius:12px;padding:0 18px;font-size:14px;font-weight:600}.mic-note{color:var(--ink-faint);text-align:center;padding-bottom:4px;font-size:12px}.today{gap:16px}.date-card{text-align:center;background:var(--bg-card);border:1px solid var(--line);border-radius:18px;padding:18px 16px 14px}.date-card .hijri{font-family:var(--serif);color:var(--gold);font-size:22px}.date-card .gregorian{color:var(--ink-faint);margin-top:4px;font-size:13px}.next-prayer{text-align:center;border:1px solid var(--line);background:linear-gradient(160deg,#d6b25e1f,#d6b25e08);border-radius:18px;padding:14px}.next-prayer .label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:12px}.next-prayer .name{font-family:var(--serif);color:var(--ink);margin-top:2px;font-size:26px}.next-prayer .countdown{color:var(--teal);font-variant-numeric:tabular-nums;margin-top:2px;font-size:14px}.times{border:1px solid var(--line);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.time-row{background:var(--bg-card);border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:12px 18px;font-size:15px;display:flex}.time-row:last-child{border-bottom:0}.time-row .prayer{color:var(--ink-dim)}.time-row .when{font-variant-numeric:tabular-nums;color:var(--ink)}.time-row.next{background:#d6b25e17}.time-row.next .prayer{color:var(--gold);font-weight:600}.verse-card{background:var(--bg-card);border:1px solid var(--line);border-radius:18px;padding:18px}.verse-card .heading{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:10px;font-size:12px}.verse-card .text{font-family:var(--serif);font-size:17px;line-height:1.65}.verse-card .cite{color:var(--gold);margin-top:10px;font-size:13px;font-style:italic}.loc-note{color:var(--ink-faint);text-align:center;font-size:12px}.loc-note button{color:var(--teal);cursor:pointer;background:0 0;border:0;font-size:12px;text-decoration:underline}.settings{gap:14px}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--ink-dim);font-size:13px}.field select{background:var(--bg-card);color:var(--ink);border:1px solid var(--line);font-size:15px;font-family:var(--sans);border-radius:12px;padding:12px 14px}.field .hint{color:var(--ink-faint);font-size:12px;line-height:1.5}.tabs{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding-bottom:env(safe-area-inset-bottom);background:#0c1f1aeb;display:flex}.tabs button{color:var(--ink-faint);font-family:var(--sans);letter-spacing:.04em;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:3px;padding:12px 0 10px;font-size:11.5px;display:flex}.tabs button .glyph{font-size:20px;line-height:1}.tabs button.active{color:var(--gold)}.verse-card .arabic{text-align:right;color:var(--gold);margin-bottom:.6rem;font-size:1.35rem;line-height:2.1}.upcoming-card{background:var(--bg-card);border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:10px;padding:16px 18px;display:flex}.upcoming-card .heading{letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-size:12px;font-weight:600}.upcoming-row{align-items:baseline;gap:12px;display:flex}.upcoming-row .when{width:84px;color:var(--gold);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12.5px}.upcoming-row .what{flex-direction:column;gap:1px;display:flex}.upcoming-row .name{align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:flex}.upcoming-row .line{color:var(--ink-dim);font-size:12.5px}.fast-chip{letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--gold);color:var(--gold);border-radius:999px;padding:1px 7px;font-size:9.5px;font-weight:600}.upcoming-note{color:var(--ink-dim);font-size:11px;font-style:italic}.section-tabs{gap:8px;margin-bottom:14px;display:flex}.section-tabs button{border:1px solid var(--line);color:var(--ink-dim);font-family:var(--sans);cursor:pointer;background:0 0;border-radius:999px;flex:1;padding:9px 0;font-size:13.5px;font-weight:600}.section-tabs button.on{background:var(--bg-card);color:var(--gold);border-color:var(--gold-soft)}.pill-btn{border:1px solid var(--gold-soft);color:var(--gold);font-family:var(--sans);cursor:pointer;background:0 0;border-radius:999px;margin-top:10px;padding:8px 16px;font-size:13px;font-weight:600}.pill-btn:hover{background:var(--bg-card)}.qibla-card{color:var(--ink);flex-direction:column;align-items:center;gap:18px;padding:18px 0;display:flex}.rose{border:2px solid var(--line);background:radial-gradient(circle at 50% 42%, var(--bg-card), var(--bg));border-radius:50%;width:230px;height:230px;position:relative}.rose .cardinal{color:var(--ink-faint);font-size:12px;font-weight:600;position:absolute}.rose .cardinal.n{color:var(--gold);top:8px;left:50%;transform:translate(-50%)}.rose .cardinal.s{bottom:8px;left:50%;transform:translate(-50%)}.rose .cardinal.e{top:50%;right:10px;transform:translateY(-50%)}.rose .cardinal.w{top:50%;left:10px;transform:translateY(-50%)}.needle{transform-origin:50%;justify-content:center;transition:transform .25s ease-out;display:flex;position:absolute;inset:0}.needle .tip{filter:drop-shadow(0 0 6px #d6b25e80);margin-top:14px;font-size:26px}.qibla-facts{text-align:center}.qibla-facts .big{font-family:var(--serif);color:var(--gold);font-size:34px}.qibla-facts .sub{color:var(--ink-dim);margin-top:3px;font-size:13px}.qibla-facts .sub.live{color:var(--teal)}.chip-row{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.cat-chip{border:1px solid var(--line);color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.cat-chip.on{color:var(--gold);border-color:var(--gold-soft);background:var(--bg-card)}.duas{flex-direction:column;gap:8px;display:flex}.dua-note{color:var(--ink-faint);margin:2px 0 8px;font-size:12.5px;font-style:italic}.dua-card{background:var(--bg-card);border:1px solid var(--line);border-radius:14px;overflow:hidden}.dua-card.open{border-color:var(--gold-soft)}.dua-head{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.dua-head .title{font-size:14.5px;font-weight:600}.dua-head .meta{color:var(--ink-faint);font-size:12px}.dua-body{flex-direction:column;gap:10px;padding:0 14px 14px;display:flex}.dua-verse .arabic{text-align:right;color:var(--gold);font-size:1.25rem;line-height:2}.dua-verse .english{font-family:var(--serif);margin-top:4px;font-size:14.5px;line-height:1.65}.tasbih{flex-direction:column;align-items:center;gap:14px;padding-top:6px;display:flex}.bead{cursor:pointer;border:2px solid var(--gold-soft);background:radial-gradient(circle at 50% 38%, var(--bg-card), var(--bg));width:220px;height:220px;color:var(--ink);-webkit-tap-highlight-color:transparent;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:4px;transition:transform 60ms;display:flex}.bead:active{transform:scale(.97)}.bead.done{border-color:var(--teal);box-shadow:0 0 24px #7fd6bb40}.bead .arabic{color:var(--gold);font-size:1.5rem}.bead .count{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:52px;line-height:1}.bead .of{color:var(--ink-faint);font-size:12px}.tasbih-row{gap:6px;display:flex}.tasbih-done{color:var(--teal);font-size:13.5px}.tasbih-meaning{color:var(--ink-dim);font-size:13px}.tasbih-daily{color:var(--ink-faint);font-size:12px}.about-hakim p{color:var(--ink-dim);margin:8px 0;font-size:13.5px;line-height:1.65}.about-hakim .heading{letter-spacing:.1em;text-transform:uppercase;color:var(--gold);font-size:12px;font-weight:600}.continue-chip{text-align:left;background:var(--bg-card);border:1px solid var(--gold-soft);width:100%;color:var(--gold);cursor:pointer;border-radius:12px;margin-bottom:10px;padding:11px 14px;font-size:13.5px;font-weight:600}.marks-row{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.marks-row .label{color:var(--ink-faint);font-size:12px}.surah-filter{box-sizing:border-box;background:var(--bg-raised);border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--sans);border-radius:12px;margin-bottom:10px;padding:10px 14px;font-size:14px}.surah-list{flex-direction:column;gap:6px;display:flex}.surah-row{text-align:left;background:var(--bg-card);border:1px solid var(--line);cursor:pointer;width:100%;color:var(--ink);border-radius:12px;align-items:center;gap:12px;padding:10px 14px;display:flex}.surah-row .num{border:1px solid var(--gold-soft);width:30px;height:30px;color:var(--gold);font-variant-numeric:tabular-nums;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;display:flex}.surah-row .names{flex-direction:column;flex:1;display:flex}.surah-row .t{font-size:14.5px;font-weight:600}.surah-row .e{color:var(--ink-faint);font-size:12px}.surah-row .ar{color:var(--gold);font-size:1.15rem}.reader-bar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.back-btn{border:1px solid var(--line);color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;flex-shrink:0;padding:7px 12px;font-size:13px;font-weight:600}.reader-title{flex-direction:column;flex:1;display:flex}.reader-title .t{font-family:var(--serif);color:var(--ink);font-size:17px}.reader-title .s{color:var(--ink-faint);font-size:11.5px}.font-btns{gap:4px;display:flex}.font-btns button{border:1px solid var(--line);width:34px;height:30px;color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:8px;font-size:12px}.bismillah-line{text-align:center;color:var(--gold);margin:6px 0 14px;font-size:1.3rem}.verses{flex-direction:column;gap:4px;display:flex}.ayah-block{border-bottom:1px solid var(--line);padding:12px 4px}.ayah-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.ayah-head .num{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11.5px}.ayah-actions{align-items:center;gap:8px;display:flex}.ayah-actions .mark{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px}.ayah-actions .mark.on{color:var(--gold)}.ayah-actions .ask{border:1px solid var(--line);color:var(--ink-dim);cursor:pointer;background:0 0;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:600}.ayah-block .arabic{text-align:right;color:var(--ink);line-height:2.1}.ayah-block .english{font-family:var(--serif);color:var(--ink-dim);margin-top:6px;line-height:1.65}.reader-foot{color:var(--ink-faint);text-align:center;padding:16px 0 4px;font-size:11px}.reader.font-0 .arabic{font-size:1.1rem}.reader.font-0 .english{font-size:13px}.reader.font-1 .arabic{font-size:1.3rem}.reader.font-1 .english{font-size:14.5px}.reader.font-2 .arabic{font-size:1.55rem}.reader.font-2 .english{font-size:16px}.reader.font-3 .arabic{font-size:1.85rem}.reader.font-3 .english{font-size:17.5px}.onboarding{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:22px;min-height:70vh;padding:24px;display:flex}.ob-card{text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;display:flex}.ob-bismillah{color:var(--gold);margin-bottom:4px;font-size:1.4rem}.ob-card h1{font-family:var(--serif);color:var(--gold);margin:0;font-size:28px;line-height:1.2}.ob-card p{color:var(--ink-dim);margin:0;font-size:14.5px;line-height:1.65}.ob-sub{color:var(--ink-faint);font-size:13px}.ob-good{color:var(--teal);font-size:14px}.ob-chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.ob-primary{cursor:pointer;background:var(--gold);color:var(--bg);font-family:var(--sans);border:none;border-radius:999px;margin-top:8px;padding:12px 34px;font-size:15px;font-weight:700}.ob-primary:hover{filter:brightness(1.08)}.ob-skip{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;padding:6px;font-size:13px}.ob-dots{gap:7px;display:flex}.ob-dots span{background:var(--line);border-radius:50%;width:7px;height:7px}.ob-dots span.on{background:var(--gold)}.ob-skip-all{color:var(--ink-faint);cursor:pointer;background:0 0;border:none;font-size:12px}.verse-hits{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.verse-hits .hits-label{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:2px;font-size:11px}.verse-hit{text-align:left;background:var(--bg-card);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.verse-hit .ref{color:var(--gold);font-size:12px;font-weight:600}.verse-hit .text{color:var(--ink-dim);font-size:13.5px;font-style:italic;line-height:1.5}.salah-tracker{flex-direction:column;gap:16px;display:flex}.salah-streak{justify-content:center;align-items:baseline;gap:10px;padding:6px 0 0;display:flex}.salah-streak .big{font-family:var(--serif);color:var(--gold);font-size:44px;line-height:1}.salah-streak .unit{color:var(--ink-dim);font-size:13px}.salah-today{flex-direction:column;gap:8px;display:flex}.salah-check{background:var(--bg-card);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:14px;align-items:center;gap:12px;padding:13px 16px;font-size:15px;display:flex}.salah-check .tick{border:1.5px solid var(--gold-soft);width:24px;height:24px;color:var(--bg);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;display:flex}.salah-check.done{border-color:var(--gold-soft)}.salah-check.done .tick{background:var(--gold);border-color:var(--gold)}.salah-check .name{font-weight:500}.salah-week{justify-content:space-between;align-items:flex-end;gap:8px;padding:8px 6px 0;display:flex}.salah-week .day{flex-direction:column;flex:1;align-items:center;gap:5px;display:flex}.salah-week .bar-wrap{justify-content:center;align-items:flex-end;width:100%;height:52px;display:flex}.salah-week .bar{background:var(--line);border-radius:4px 4px 2px 2px;width:14px;transition:height .25s}.salah-week .bar.f5{background:var(--gold)}.salah-week .bar.f3,.salah-week .bar.f4{background:var(--gold-soft)}.salah-week .bar.f1,.salah-week .bar.f2{background:#d6b25e4d}.salah-week .lbl{color:var(--ink-faint);font-size:10.5px}.salah-week .day.today .lbl{color:var(--gold);font-weight:600}.reminder-row{align-items:center;gap:10px;padding:6px 0;display:flex}.reminder-row label{color:var(--ink);flex:1;font-size:14px}.reminder-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold)}.reminder-row input[type=time]{background:var(--bg-card);border:1px solid var(--line);color:var(--ink);border-radius:8px;padding:5px 8px;font-size:13px}.reminder-row input[type=time]:disabled{opacity:.4}.anon-id{color:var(--ink-dim);background:var(--bg-card);border:1px solid var(--line);word-break:break-all;-webkit-user-select:all;user-select:all;border-radius:8px;margin-top:6px;padding:8px 10px;font-family:ui-monospace,monospace;font-size:12px}a{color:var(--gold)}a.pill-btn{text-align:center;text-decoration:none;display:inline-block}.pill-btn.danger{color:var(--danger);border-color:#e0858566}.bubble .report{color:var(--ink-faint);cursor:pointer;text-underline-offset:2px;font-size:11px;font-family:var(--sans);background:0 0;border:none;margin-top:8px;padding:0;text-decoration:underline;display:block}.bubble .report:hover{color:var(--ink-dim)}.bubble .report.done{cursor:default;font-style:italic;text-decoration:none}.dua-head{padding-right:40px;position:relative}.dua-star{color:var(--ink-faint);cursor:pointer;padding:2px;font-size:18px;line-height:1;position:absolute;top:10px;right:12px}.dua-star.on{color:var(--gold)}
