@font-face{font-family:Amiri;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/amiri-arabic-400-normal-D0NIBXga.woff2)format("woff2"),url(/assets/amiri-arabic-400-normal-C_1DQziU.woff)format("woff")}@font-face{font-family:Amiri;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/amiri-arabic-700-normal-D8FrblyB.woff2)format("woff2"),url(/assets/amiri-arabic-700-normal-dUd6sHq-.woff)format("woff")}@font-face{font-family:Amiri;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/amiri-latin-700-normal-DIjoEGk6.woff2)format("woff2"),url(/assets/amiri-latin-700-normal-BH9dHmOv.woff)format("woff")}:root{--bg:#070c1a;--bg-2:#0d1528;--card:#101930c7;--line:#d9b45a29;--line-2:#1d2742;--text:#f4eedd;--muted:#8d95ad;--accent:#e2bd62;--accent-2:#f5dc95;--emerald:#45e0a3;--danger:#ff7a6b;--radius:20px;--calligraphy:"Amiri", "Scheherazade New", "Noto Naskh Arabic", "Geeza Pro", serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,Geeza Pro,Noto Sans Arabic,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(ellipse 90% 50% at 50% -10%, #e2bd6229, transparent 70%), radial-gradient(ellipse 70% 40% at 50% 110%, #0b7a522e, transparent 70%), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='88' height='88'%3E%3Cg fill='none' stroke='%23d9b45a' stroke-opacity='.075' stroke-width='1'%3E%3Cpolygon points='44.0,18.0 51.6,25.6 62.4,25.6 62.4,36.4 70.0,44.0 62.4,51.6 62.4,62.4 51.6,62.4 44.0,70.0 36.4,62.4 25.6,62.4 25.6,51.6 18.0,44.0 25.6,36.4 25.6,25.6 36.4,25.6'/%3E%3Cpolygon points='44.0,31.0 47.8,34.8 53.2,34.8 53.2,40.2 57.0,44.0 53.2,47.8 53.2,53.2 47.8,53.2 44.0,57.0 40.2,53.2 34.8,53.2 34.8,47.8 31.0,44.0 34.8,40.2 34.8,34.8 40.2,34.8'/%3E%3Cpolygon points='0.0,-26.0 7.6,-18.4 18.4,-18.4 18.4,-7.6 26.0,0.0 18.4,7.6 18.4,18.4 7.6,18.4 0.0,26.0 -7.6,18.4 -18.4,18.4 -18.4,7.6 -26.0,0.0 -18.4,-7.6 -18.4,-18.4 -7.6,-18.4'/%3E%3Cpolygon points='88.0,-26.0 95.6,-18.4 106.4,-18.4 106.4,-7.6 114.0,0.0 106.4,7.6 106.4,18.4 95.6,18.4 88.0,26.0 80.4,18.4 69.6,18.4 69.6,7.6 62.0,0.0 69.6,-7.6 69.6,-18.4 80.4,-18.4'/%3E%3Cpolygon points='0.0,62.0 7.6,69.6 18.4,69.6 18.4,80.4 26.0,88.0 18.4,95.6 18.4,106.4 7.6,106.4 0.0,114.0 -7.6,106.4 -18.4,106.4 -18.4,95.6 -26.0,88.0 -18.4,80.4 -18.4,69.6 -7.6,69.6'/%3E%3Cpolygon points='88.0,62.0 95.6,69.6 106.4,69.6 106.4,80.4 114.0,88.0 106.4,95.6 106.4,106.4 95.6,106.4 88.0,114.0 80.4,106.4 69.6,106.4 69.6,95.6 62.0,88.0 69.6,80.4 69.6,69.6 80.4,69.6'/%3E%3C/g%3E%3C/svg%3E"), var(--bg);-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior:none;touch-action:manipulation;background-attachment:fixed;min-height:100dvh}h1,h2,p{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--bg-2);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:14px;min-height:44px;padding:10px 16px}button:disabled{opacity:.4;cursor:default}button.primary{background:linear-gradient(180deg, var(--accent-2), var(--accent));color:#241a04;border-color:#0000;font-weight:700}button.danger{color:var(--danger)}button.link{min-height:0;color:var(--accent-2);background:0 0;border:none;padding:4px 0}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input{border:1px solid var(--line-2);background:#070c1ab3;border-radius:12px;width:100%;min-height:44px;padding:10px 12px;font-size:16px}label{color:var(--muted);gap:6px;font-size:.85rem;display:grid}.calligraphy{font-family:var(--calligraphy)}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger);font-size:.9rem}.info{color:var(--accent-2);font-size:.9rem}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(6px);padding:16px}.segmented{background:var(--bg-2);border:1px solid var(--line);border-radius:14px;grid-auto-flow:column;justify-self:start;gap:4px;padding:4px;display:inline-grid}.segmented button{color:var(--muted);background:0 0;border:none;border-radius:10px;padding:8px 18px}.segmented button[aria-pressed=true]{background:var(--accent);color:#241a04;font-weight:700}.auth{place-content:center;gap:24px;min-height:100dvh;padding:24px;display:grid;position:relative}.auth-lang{top:calc(env(safe-area-inset-top) + 16px);position:absolute;inset-inline-end:16px}.auth-brand{text-align:center;justify-items:center;gap:6px;display:grid}.auth-brand h1{color:var(--accent-2);font-size:2.6rem;line-height:1.6}.auth-logo{fill:none;width:64px;height:64px;stroke:var(--accent);stroke-width:2.5px}.auth-card{gap:14px;width:min(380px,92vw);display:grid}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.app{max-width:560px;min-height:100dvh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);flex-direction:column;margin:0 auto;display:flex}.topbar{padding:calc(env(safe-area-inset-top) + 14px) 18px 10px;z-index:5;background:linear-gradient(var(--bg) 70%, transparent);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.01em;font-size:1.9rem;font-weight:800}.topbar h1.calligraphy{color:var(--accent-2);letter-spacing:0;font-size:2.1rem;font-weight:700;line-height:1.2}.content{padding:8px 16px calc(env(safe-area-inset-bottom) + 84px);flex:1}.tabs{-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);width:min(560px,100%);padding:6px 6px calc(env(safe-area-inset-bottom) + 6px);background:#070c1ae6;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tabs button{min-height:52px;color:var(--muted);background:0 0;border:none;justify-items:center;gap:3px;padding:6px 0;font-size:.72rem;display:grid}.tabs button.active{color:var(--accent)}.tab-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.sync{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.72rem}.sync-offline,.sync-error{color:var(--accent-2);border-color:var(--accent)}.counter{text-align:center;justify-items:center;gap:clamp(8px,1.6dvh,16px);display:grid}.chips{scrollbar-width:none;scroll-snap-type:x proximity;overscroll-behavior-x:contain;gap:8px;width:calc(100% + 32px);margin:0 -16px;padding:0 16px 4px;scroll-padding:0 16px;display:flex;overflow-x:auto}.chips::-webkit-scrollbar{display:none}.chip{scroll-snap-align:start;white-space:nowrap;background:var(--card);border-radius:999px;flex:none;align-items:center;gap:8px;padding:7px 14px;font-size:.9rem;display:inline-flex}.chip .calligraphy{font-size:1.05rem;line-height:1.2}.chip.active{border-color:var(--c);color:var(--c);background:color-mix(in srgb, var(--c) 12%, var(--bg));font-weight:600}.dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-inline-end:8px;display:inline-block}.chip .dot{background:var(--c);margin:0}.dhikr-title{align-content:center;gap:2px;min-height:clamp(64px,11dvh,92px);display:grid}.arabic{color:var(--accent-2);text-shadow:0 0 24px #e2bd6240;font-size:clamp(1.9rem,4.6dvh,2.6rem);font-weight:700;line-height:1.5}.transliteration{letter-spacing:.02em;font-size:.95rem}.tap-zone{touch-action:none;-webkit-touch-callout:none;cursor:pointer;border:1px solid #0000;border-color:var(--line);background:radial-gradient(at 50% 45%,#e2bd6212,#0000 70%);border-radius:28px;justify-items:center;gap:10px;width:100%;padding:14px 0 12px;display:grid}.tap-caption{color:var(--muted);font-size:.85rem}.tap-caption strong{color:var(--text)}.tap-caption .calligraphy{font-size:1rem;line-height:1.2}.tap{aspect-ratio:1;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 40%,#202e54e6,#0a1022f2 68%);border:none;border-radius:50%;place-items:center;width:min(280px,72vw,32dvh);padding:0;transition:transform 80ms,box-shadow .4s;display:grid;position:relative;box-shadow:0 24px 60px #00000073}.tap-zone:active .tap{transform:scale(.97)}.tap-zone.complete .tap{box-shadow:0 24px 60px #00000073, 0 0 50px color-mix(in srgb, var(--glow) 45%, transparent)}.tap .tap-ring{position:absolute;inset:0}.tap-star{fill:none;stroke:var(--accent);stroke-opacity:.16;stroke-width:.8px;position:absolute;inset:17%}.tap-pulse{border:2px solid var(--glow);opacity:0;pointer-events:none;border-radius:50%;animation:.5s ease-out pulse;position:absolute;inset:12%}@keyframes pulse{0%{opacity:.45;transform:scale(.92)}to{opacity:0;transform:scale(1.06)}}.tap-inner{gap:2px;display:grid;position:relative}.tap-count{font-variant-numeric:tabular-nums;font-size:clamp(3.2rem,9dvh,4.8rem);font-weight:700;line-height:1}.tap-target{color:var(--muted);font-weight:600}.tap-goal{font-size:.78rem;font-weight:600}.chip-count{font-variant-numeric:tabular-nums;background:#ffffff14;border-radius:999px;min-width:22px;padding:1px 7px;font-size:.78rem;font-weight:700}.chip:disabled{opacity:1;cursor:default}.chip.flash{animation:.7s ease-out chip-flash}@keyframes chip-flash{0%{border-color:var(--c);box-shadow:0 0 18px color-mix(in srgb, var(--c) 60%, transparent);color:var(--c)}}.share{background:var(--line-2);border-radius:999px;height:4px;display:block;overflow:hidden}.share>span{border-radius:999px;height:100%;display:block}.metric-value.big{font-size:2.6rem}.metrics{grid-auto-columns:1fr;grid-auto-flow:column;gap:12px;width:100%;display:grid}.metric{text-align:start;gap:2px;display:grid}.metric-label{color:var(--muted);font-size:.78rem;font-weight:600}.metric-value{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:700;line-height:1.15}.metric-value small{color:var(--muted);font-size:.5em;font-weight:600}.actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.actions button{min-width:96px}.actions .listening{border-color:var(--danger);color:var(--danger)}.add-form{gap:8px;width:min(300px,100%);display:flex}.voice-live{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--glow,var(--accent)) 40%, transparent);background:var(--card);text-align:start;gap:6px;width:100%;padding:12px 14px;display:grid}.voice-status{color:var(--danger);align-items:center;gap:8px;font-size:.8rem;font-weight:700;display:flex}.mic-dot{background:var(--danger);border-radius:50%;width:10px;height:10px;animation:1.2s ease-in-out infinite mic}@keyframes mic{50%{opacity:.6;box-shadow:0 0 0 6px #ff7a6b26}}.voice-text{text-align:right;flex-direction:column;justify-content:flex-end;height:2.6em;font-size:1.25rem;line-height:1.3;display:flex;overflow:hidden}.voice-text>span{display:block}.voice-final{color:var(--muted)}.voice-final.latest{color:var(--text)}.voice-interim{color:var(--text);opacity:.75}.voice-placeholder{color:var(--muted)}.voice-text mark{background:color-mix(in srgb, var(--m,var(--accent)) 45%, transparent);color:var(--text);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px;padding:0 3px;font-weight:700}.voice-note{color:var(--muted);margin-inline-start:auto;font-size:.72rem;font-weight:400}.hint{color:var(--accent-2);font-size:.85rem}.hint.subtle{color:var(--muted)}@property --deg{syntax:"<angle>";inherits:true;initial-value:0deg}.rings{aspect-ratio:1;flex:none;position:relative;container-type:inline-size}.ring{transition:--deg .45s cubic-bezier(.2,.8,.2,1);position:absolute}.ring-track,.ring-arc{-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 2 * var(--stroke) - .5px), #000 calc(100% - 2 * var(--stroke)));-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 2 * var(--stroke) - .5px), #000 calc(100% - 2 * var(--stroke)));mask:radial-gradient(farthest-side, transparent calc(100% - 2 * var(--stroke) - .5px), #000 calc(100% - 2 * var(--stroke)));border-radius:50%;position:absolute;inset:0}.ring-track{background:var(--to);opacity:.2}.ring-arc{background:conic-gradient(var(--from), var(--to) var(--deg), transparent var(--deg))}.ring.lapped .ring-arc{background:conic-gradient(from var(--deg), var(--from), var(--to))}.ring-head{transform:rotate(var(--deg));position:absolute;inset:0}.ring-cap{top:0;left:calc(50% - var(--stroke) / 2);width:var(--stroke);aspect-ratio:1;border-radius:50%;position:absolute}.ring-cap.start{background:var(--from)}.ring-cap.end{background:var(--to)}.ring.lapped .ring-cap.end{box-shadow:1.2cqw 0 2cqw #0009}.rings-lg{width:min(170px,44vw)}.rings-sm{width:40px}.rings-xs{width:100%;max-width:42px}.rings-frame{background:radial-gradient(circle,#e2bd6214,#0000 70%);border-radius:50%;padding:8px;position:relative}.page{gap:14px;display:grid}.date-block{gap:2px;display:grid}.date-label{color:var(--muted);font-size:.85rem;font-weight:600}.hijri{font-family:var(--calligraphy);color:var(--accent);font-size:1.15rem}.hijri.small{font-size:.95rem;font-weight:400;display:block}.card-title{margin-bottom:12px;font-size:1.05rem;font-weight:700}.activity-body{align-items:center;gap:18px;display:flex}.legend{gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.legend li{display:grid}.legend-name{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;font-weight:600;overflow:hidden}.legend-name.calligraphy{font-size:1.1rem;line-height:1.3}.legend-value{font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:700;line-height:1.1}.legend-value small{color:var(--muted);font-size:.6em}.section-title{margin:6px 0 0;font-size:1.15rem;font-weight:700}.list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.list>li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.row{text-align:start;background:0 0;border:none;border-radius:0;align-items:center;gap:14px;width:100%;padding:12px 16px;display:flex}.row-main{flex:1;gap:2px;display:grid}.row-main .calligraphy{font-size:1.2rem;line-height:1.4}.row-count{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:700}.calendar{grid-template-columns:repeat(7,1fr);justify-items:center;gap:6px 4px;display:grid}.calendar-head{color:var(--muted);font-size:.75rem;font-weight:600}.calendar-day{background:0 0;border:none;border-radius:10px;justify-items:center;gap:4px;width:100%;padding:4px 0;display:grid}.calendar-num{min-width:22px;color:var(--muted);border-radius:999px;font-size:.75rem;font-weight:600;line-height:22px}.calendar-day.selected .calendar-num{background:var(--accent);color:#241a04}.day-detail-head{justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px;font-weight:600;display:flex}.day-detail-head strong{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.6rem}.breakdown{gap:8px;margin:0;padding:0;list-style:none;display:grid}.breakdown li{justify-content:space-between;align-items:center;font-size:.95rem;display:flex}.breakdown li .calligraphy{font-size:1.1rem}.breakdown li>span:last-child{font-variant-numeric:tabular-nums;font-weight:700}.edit-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.edit-list>li{border-inline-start:3px solid var(--c)}.edit-grid{grid-template-columns:1fr 110px;gap:10px;display:grid}.edit-grid .full{grid-column:1/-1}.edit-grid input.calligraphy{padding:6px 12px;font-size:1.2rem}.edit-actions{gap:8px;margin-top:10px;display:flex}.edit-actions .danger{margin-inline-start:auto}.settings-actions{justify-content:space-between;gap:10px;display:flex}.account{word-break:break-all;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}@media (pointer:coarse){.counter .hint.subtle{display:none}}@media (width<=600px){.counter .metrics{-webkit-backdrop-filter:none;background:0 0;border:none;padding:0 4px}.counter .metric{text-align:center}}@media (width<=360px){.metric-value{font-size:1.4rem}.content{padding-left:12px;padding-right:12px}.legend-value{font-size:1.2rem}}@media (orientation:landscape) and (height<=520px){.app{max-width:900px}.topbar{padding-top:8px;padding-bottom:4px}.topbar h1{font-size:1.4rem}.counter{grid-template-columns:auto 1fr;grid-template-areas:"chips chips""tap voice""tap actions""tap hints";align-items:center;column-gap:20px}.counter>.tiles{grid-area:chips;grid-template-columns:repeat(4,1fr)}.counter>.tap-zone{grid-area:tap;width:auto;padding:8px 16px}.app .counter .tap,.app .counter.listening .tap{width:min(44dvh,220px)}.counter>.voice-live,.counter>.hint:not(.subtle){grid-area:voice}.counter>.actions{grid-area:actions}.counter>.hint.subtle,.counter>.error,.counter>.add-form{grid-column:2}.arabic{font-size:1.8rem}.tabs button{grid-auto-flow:column;align-items:center;gap:6px;min-height:40px}}@media (prefers-reduced-motion:reduce){.ring{transition:none}.tap-pulse{display:none}}.goal-input{max-width:160px}.tap-to-start{width:100%;min-height:64px;font-size:1.1rem}.siri{gap:10px;display:grid}.switch-row{color:var(--text);align-items:center;gap:12px;font-size:.95rem;display:flex}.switch-row input{width:22px;height:22px;min-height:22px;accent-color:var(--accent);flex:none}.link-row{gap:8px;display:flex}.steps{gap:4px;margin:0;padding-inline-start:20px;display:grid}.voice-status.phase-starting,.voice-status.phase-restarting{color:var(--accent-2)}.voice-status.phase-starting .mic-dot,.voice-status.phase-restarting .mic-dot{background:var(--accent-2)}.voice-diag{color:var(--muted);opacity:.8;flex-wrap:wrap;gap:4px 10px;font-size:.68rem;display:flex}.voice-diag .on{color:var(--emerald)}.voice-diag .on:before{content:"● "}.voice-diag .err{color:var(--danger)}.tiles{grid-template-columns:repeat(4,1fr);gap:6px;width:100%;display:grid}.tile{box-shadow:inset 0 3px 0 var(--c);border:1px solid var(--line);background:var(--card);text-align:center;border-radius:12px;align-content:center;justify-items:center;gap:0;min-width:0;min-height:44px;padding:4px 6px;display:grid}.tile-count{font-variant-numeric:tabular-nums;color:var(--text);font-size:1.05rem;font-weight:700;line-height:1.1}.tile-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--muted);font-size:.7rem;overflow:hidden}.tile-name.calligraphy{font-size:.8rem;line-height:1.15}.tile.active{border-color:var(--c);background:color-mix(in srgb, var(--c) 14%, var(--bg))}.tile.active .tile-name{color:var(--text)}.tile:disabled{opacity:1;cursor:default}.tile.flash{animation:.7s ease-out chip-flash}.counter .tap{width:min(260px,66vw,28dvh)}.counter.listening .tap{width:min(220px,60vw,23dvh)}.counter.listening .tap-zone{padding:6px 0}.listening-pill{left:50%;bottom:calc(env(safe-area-inset-bottom) + 70px);z-index:6;min-height:40px;color:var(--text);white-space:nowrap;background:#0d1528f2;border-color:#ff7a6b80;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:600;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0006}.voice-log{gap:10px;display:grid}.voice-log ul{gap:6px;max-height:320px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.voice-log li{border-inline-start:3px solid var(--emerald);background:#ffffff08;border-radius:10px;grid-template-columns:auto 1fr;gap:0 10px;padding:6px 8px;display:grid}.voice-log li.missed{border-inline-start-color:var(--danger)}.log-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.72rem}.log-text{text-align:right;font-size:1rem}.log-found{color:var(--muted);grid-column:2;font-size:.75rem}.voice-log li.missed .log-found{color:var(--danger)}.level-0{--heat:#ffffff0a;--heat-ink:var(--muted)}.level-1{--heat:#2f2a1c;--heat-ink:var(--text)}.level-2{--heat:#5a4a24;--heat-ink:var(--text)}.level-3{--heat:#94742e;--heat-ink:#fff}.level-4{--heat:#d9b45a;--heat-ink:#241a04}.level-5{--heat:#f6dd92;--heat-ink:#241a04}.insights{grid-template-columns:1fr 1fr;gap:14px 12px;display:grid}.bars{border-bottom:1px solid var(--line);grid-template-columns:repeat(30,1fr);align-items:end;gap:2px;height:140px;display:grid;position:relative}.bar-col{background:0 0;border:none;border-radius:0;align-items:flex-end;height:100%;min-height:0;padding:0;display:flex}.bar{background:var(--heat);border-radius:4px 4px 1px 1px;width:100%}.bar.level-0{height:0!important}.bar-col.selected .bar{outline:2px solid var(--text);outline-offset:1px}.goal-line{border-top:1px dashed var(--accent);pointer-events:none;z-index:1;position:absolute;left:0;right:0}.goal-line span{color:var(--accent);background:var(--card);border-radius:4px;padding:0 4px;font-size:.68rem;font-weight:600;position:absolute;bottom:2px;right:0}.bars-axis{color:var(--muted);justify-content:space-between;margin-top:4px;font-size:.7rem;display:flex}.heat{aspect-ratio:1;background:var(--heat);width:100%;min-height:0;color:var(--heat-ink);border:1px solid #0000;border-radius:10px;grid-template-rows:auto 1fr;justify-items:center;padding:3px;display:grid;position:relative}.heat.selected{border-color:var(--text)}.heat.level-4,.heat.level-5{box-shadow:0 0 12px #e2bd6259}.heat-day{opacity:.75;justify-self:start;font-size:.62rem;line-height:1}.heat-mark{top:2px;font-size:.6rem;line-height:1;position:absolute;inset-inline-end:4px}.heat-legend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:4px;margin-top:12px;font-size:.7rem;display:flex}.legend-mark{margin-inline-start:10px}.celebration{top:calc(env(safe-area-inset-top) + 70px);z-index:20;border:1px solid var(--accent);text-align:center;background:radial-gradient(circle at 50% 0,#e2bd6240,#0000 70%),#0d1528;border-radius:24px;justify-items:center;gap:6px;width:min(340px,90vw);padding:20px 18px;animation:.5s cubic-bezier(.2,.9,.3,1.3) celebrate-in;display:grid;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 20px 60px #0009,0 0 40px #e2bd624d}.celebration strong{color:var(--accent-2);font-size:1.2rem}.celebration-dua{color:var(--accent-2);font-size:1.3rem}.celebration-star{fill:#e2bd6226;width:56px;height:56px;stroke:var(--accent);stroke-width:2.5px;animation:1.6s ease-out star-spin}@keyframes celebrate-in{0%{opacity:0;transform:translate(-50%,-20px)scale(.9)}}@keyframes star-spin{0%{opacity:0;transform:rotate(-90deg)scale(.4)}}.mix-legend{color:var(--muted);flex-wrap:wrap;gap:4px 12px;margin-top:8px;font-size:.72rem;display:flex}.mix-legend .dot{width:8px;height:8px;margin-inline-end:4px}.mix-legend .calligraphy{font-size:.85rem}.heat.day-cell{color:var(--text);background:#ffffff0a;grid-template-rows:auto 1fr;padding:3px 3px 4px}.heat.day-cell.goal{border-color:#e2bd62b3;box-shadow:0 0 10px #e2bd624d}.heat.day-cell.selected{border-color:var(--text)}.ring-box{place-items:center;width:100%;min-height:0;display:grid}.day-rings{width:100%;max-width:40px}.voice-toast{top:calc(env(safe-area-inset-top) + 64px);z-index:15;text-align:start;background:#0d1528;border-radius:16px;align-items:center;gap:12px;width:min(360px,92vw);padding:10px 14px;animation:.35s ease-out celebrate-in;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #00000080}.voice-toast.on{border-color:#ff7a6b80}.voice-toast.off{border-color:var(--accent)}.voice-toast-text{color:var(--muted);gap:2px;font-size:.82rem;display:grid}.voice-toast-text strong{color:var(--text);font-size:.95rem}.stop-dot{background:var(--accent);border-radius:2px;flex:none;width:10px;height:10px}.actions .voice-off{border-color:var(--accent);color:var(--accent-2)}.listening-pill.off{border-color:var(--accent)}.hint.both-hint{color:var(--muted)}.siri a{color:var(--accent-2)}.reminder-backdrop{z-index:25;-webkit-backdrop-filter:blur(4px);background:#070c1abf;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.reminder-popup{border:1px solid var(--accent);background:radial-gradient(circle at 50% 0,#e2bd6229,#0000 70%),#0d1528;border-radius:24px;gap:14px;width:min(420px,100%);max-height:85dvh;padding:20px;animation:.4s ease-out celebrate-in;display:grid;overflow-y:auto;box-shadow:0 20px 60px #0009}.reminder-card{gap:10px;display:grid}.reminder-kind{letter-spacing:.04em;color:var(--accent);font-size:.78rem;font-weight:700}.reminder-arabic{color:var(--text);text-align:right;font-size:1.45rem;line-height:2}.reminder-card.quran .reminder-arabic{color:var(--accent-2)}.reminder-meaning{color:var(--text);font-size:.95rem;line-height:1.55}.reminder-source{color:var(--muted);font-size:.78rem}.reminder-actions{justify-content:flex-end;gap:10px;margin-top:4px;display:flex}
