:root{color-scheme:light;--bg:#f5f1e7;--bg-soft:#ebe5d6;--panel:rgba(255,255,255,.76);--panel-solid:#fbfaf5;--ink:#0b2a22;--muted:#566a62;--line:rgba(12,63,50,.17);--line-strong:rgba(12,63,50,.32);--emerald:#0f6a54;--emerald-bright:#16876a;--gold:#87620f;--gold-bright:#d6ab4d;--on-accent:#fff;--track:rgba(12,63,50,.1);--shadow:0 28px 80px rgba(21,46,38,.13);--danger:#9c3f34;--success:#17735a;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme="dark"],:root[data-theme-mode="dark"]{color-scheme:dark;--bg:#061914;--bg-soft:#0a221b;--panel:rgba(13,43,34,.78);--panel-solid:#0d2b22;--ink:#eff5e9;--muted:#abc0b7;--line:rgba(152,201,179,.18);--line-strong:rgba(182,219,201,.34);--emerald:#5dc5a3;--emerald-bright:#7addba;--gold:#d7ad50;--gold-bright:#f0cc73;--on-accent:#06251c;--track:rgba(182,219,201,.11);--shadow:0 30px 90px rgba(0,0,0,.36);--danger:#f19b8c;--success:#78d7b7}
@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--bg:#061914;--bg-soft:#0a221b;--panel:rgba(13,43,34,.78);--panel-solid:#0d2b22;--ink:#eff5e9;--muted:#abc0b7;--line:rgba(152,201,179,.18);--line-strong:rgba(182,219,201,.34);--emerald:#5dc5a3;--emerald-bright:#7addba;--gold:#d7ad50;--gold-bright:#f0cc73;--on-accent:#06251c;--track:rgba(182,219,201,.11);--shadow:0 30px 90px rgba(0,0,0,.36)}}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 50% -12%,color-mix(in srgb,var(--gold) 18%,transparent),transparent 37%),radial-gradient(circle at 9% 72%,color-mix(in srgb,var(--emerald) 10%,transparent),transparent 33%),linear-gradient(145deg,var(--bg),var(--bg-soft));color:var(--ink);font-family:var(--font);line-height:1.5}.tasbih-app{width:min(1120px,calc(100% - 40px));margin:0 auto}.app-header{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}a{color:inherit}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:850}.brand-mark{color:var(--gold)}.header-actions,.locale-links,.theme-switcher{display:flex;align-items:center}.header-actions{gap:12px}.locale-links,.theme-switcher{padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--panel);backdrop-filter:blur(14px)}.locale-links a,.theme-switcher button{display:grid;place-items:center;min-width:36px;height:32px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:12px;text-decoration:none;cursor:pointer}.locale-links a[aria-current="page"],.theme-switcher button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid color-mix(in srgb,var(--gold) 62%,transparent);outline-offset:3px}button{font:inherit}main{padding:58px 0 46px}.hero{max-width:720px;margin:0 auto 30px;text-align:center}.eyebrow{margin:0 0 9px;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.22em}.hero h1{margin:0;font-size:clamp(40px,6vw,68px);line-height:.98;letter-spacing:-.055em}.hero>p:last-child{max-width:590px;margin:18px auto 0;color:var(--muted);font-size:17px}.counter-card{position:relative;width:min(720px,100%);margin:0 auto;padding:26px 34px 30px;border:1px solid var(--line);border-radius:30px;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--emerald) 10%,transparent),transparent 45%),var(--panel);box-shadow:var(--shadow);backdrop-filter:blur(18px);overflow:hidden}.privacy-pill{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;max-width:100%;margin:0 auto 18px;padding:7px 11px;border:1px solid var(--line);border-radius:999px;color:var(--success);font-size:11px;font-weight:850}.preset-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:7px;margin-bottom:24px}.preset-button{min-width:0;min-height:58px;padding:7px 5px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 44%,transparent);color:var(--muted);cursor:pointer}.preset-button strong,.preset-button small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preset-button strong{color:var(--ink);font-family:serif;font-size:17px}.preset-button.is-custom strong{font-family:var(--font);font-size:13px;font-weight:850}.preset-button small{margin-top:2px;font-size:9px}.preset-button[aria-pressed="true"]{border-color:color-mix(in srgb,var(--gold) 65%,var(--line));background:color-mix(in srgb,var(--gold) 12%,var(--panel-solid));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 18%,transparent)}.counter-button{--progress:0deg;position:relative;display:grid;place-items:center;width:min(330px,72vw);aspect-ratio:1;margin:0 auto;padding:15px;border:0;border-radius:50%;background:conic-gradient(from -90deg,var(--gold-bright) 0 var(--progress),var(--track) var(--progress) 360deg);box-shadow:0 18px 48px color-mix(in srgb,var(--emerald) 17%,transparent),inset 0 0 0 1px var(--line);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.counter-button::before{content:"";position:absolute;inset:9px;border-radius:50%;background:radial-gradient(circle at 38% 26%,color-mix(in srgb,#fff 48%,transparent),transparent 31%),linear-gradient(150deg,color-mix(in srgb,var(--panel-solid) 96%,var(--emerald) 4%),color-mix(in srgb,var(--panel-solid) 88%,var(--emerald) 12%));box-shadow:inset 0 0 0 1px var(--line),inset 0 -18px 44px color-mix(in srgb,var(--emerald) 8%,transparent)}.counter-core{position:relative;z-index:1;display:grid;place-items:center;max-width:82%}.selected-dhikr{min-height:28px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gold);font-family:serif;font-size:23px;font-weight:700}.counter-core strong{font-size:clamp(82px,15vw,126px);font-variant-numeric:tabular-nums;line-height:.92;letter-spacing:-.075em}.counter-core>span:last-child{margin-top:12px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.counter-button:active .counter-core{transform:scale(.97)}.counter-button.is-counting .counter-core{animation:count-pop .22s ease-out}.tasbih-app[data-complete="true"] .counter-button{box-shadow:0 0 0 8px color-mix(in srgb,var(--gold) 9%,transparent),0 18px 55px color-mix(in srgb,var(--gold) 27%,transparent)}@keyframes count-pop{0%{transform:scale(.96)}55%{transform:scale(1.045)}100%{transform:scale(1)}}.goal-status{min-height:28px;margin:17px 0 14px;text-align:center;color:var(--muted);font-size:13px;font-weight:750}.tasbih-app[data-complete="true"] .goal-status{color:var(--success)}.goal-picker{display:flex;align-items:center;justify-content:center;gap:12px}.goal-picker>span{color:var(--muted);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.goal-picker>div{display:flex;gap:6px}.goal-option,.rate-option{min-width:56px;height:38px;padding:0 12px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--muted);font:800 12px/1 var(--font);cursor:pointer}.goal-option[aria-pressed="true"],.rate-option[aria-pressed="true"]{border-color:var(--line-strong);background:var(--ink);color:var(--bg)}.counter-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:410px;margin:20px auto 0}.counter-actions button,.goal-management-actions button,.form-actions button,.custom-rate-form button,.manual-form button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 46%,transparent);color:var(--ink);font:800 13px/1 var(--font);cursor:pointer}.counter-actions button:disabled{opacity:.38;cursor:not-allowed}.counter-actions #reset[data-confirming="true"],.delete-goal[data-confirming="true"],.clear-all[data-confirming="true"]{border-color:color-mix(in srgb,var(--danger) 54%,var(--line));color:var(--danger);background:color-mix(in srgb,var(--danger) 7%,transparent)}.goal-management-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:410px;margin:10px auto 0}.goal-management-actions button{min-height:42px;font-size:12px}.goal-form,.goal-manager{max-width:500px;margin:18px auto 0;padding:16px;border:1px solid var(--line);border-radius:18px;background:color-mix(in srgb,var(--bg) 30%,transparent)}.goal-form{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(100px,.7fr);gap:10px}.goal-form label,.manual-form label{display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:850}.goal-form input,.manual-form input,.custom-rate-form input{width:100%;min-height:43px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:var(--panel-solid);color:var(--ink);font:inherit}.form-actions{grid-column:1/-1;display:flex;gap:8px}.form-actions button{flex:1;min-height:42px}.primary{border-color:transparent!important;background:var(--emerald)!important;color:#fff!important}.goal-manager{display:grid;gap:9px}.manager-hint,.empty-copy{margin:0;color:var(--muted);font-size:12px}.manager-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.manager-row strong,.manager-row small{display:block}.manager-row strong{font-size:13px}.manager-row small{margin-top:2px;color:var(--muted);font-size:11px}.delete-goal,.clear-all{min-height:36px;padding:0 11px;border:1px solid color-mix(in srgb,var(--danger) 44%,var(--line));border-radius:10px;background:transparent;color:var(--danger);font-size:11px;font-weight:850;cursor:pointer}.clear-all{margin-top:4px}.privacy-note{display:flex;align-items:flex-start;justify-content:center;gap:8px;max-width:520px;margin:22px auto 0;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:11px;text-align:center}.privacy-note>span:first-child{color:var(--success)}.tracker-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:min(850px,100%);margin:24px auto 0}.detail-card{padding:22px;border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:0 14px 44px color-mix(in srgb,var(--emerald) 7%,transparent)}.trend-card{grid-column:1/-1}.detail-heading h2{margin:0;font-size:20px;letter-spacing:-.025em}.detail-heading>p:last-child{margin:7px 0 0;color:var(--muted);font-size:13px}.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:18px}.milestone{padding:10px 6px;border:1px solid var(--line);border-radius:12px;color:var(--muted);font-size:11px;font-weight:800;text-align:center}.milestone.is-reached{border-color:color-mix(in srgb,var(--gold) 68%,var(--line));background:color-mix(in srgb,var(--gold) 14%,transparent);color:var(--gold)}.rate-options{display:flex;flex-wrap:wrap;gap:7px;margin-top:17px}.rate-option{height:35px;min-width:0;font-size:11px}.custom-rate-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:9px}.custom-rate-form button{min-height:43px;padding:0 15px}.projection-result{min-height:24px;margin-top:13px;color:var(--success);font-size:13px;font-weight:750}.projection-result p{margin:0}.projection-complete{color:var(--gold)}.manual-form{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:17px}.manual-form button{grid-column:1/-1;min-height:43px}.chart-wrap{margin-top:16px;padding:10px 0;border-bottom:1px solid var(--line)}#weekly-chart{display:block;width:100%;height:auto}.chart-bar{fill:var(--track)}.chart-bar.is-active{fill:var(--emerald-bright)}.chart-label{fill:var(--muted);font:800 12px var(--font)}.history-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:260px;margin:15px 0 0;padding:0;overflow:auto;list-style:none}.history-item,.history-empty{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;color:var(--muted);font-size:12px}.history-item strong{color:var(--success)}.history-empty{grid-column:1/-1;justify-content:flex-start}.noscript{text-align:center}.sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}[dir="rtl"] .hero h1{letter-spacing:-.02em}[dir="rtl"] .brand-mark{order:2}
@media(max-width:700px){.tasbih-app{width:100%}.app-header,main,footer{padding-left:16px;padding-right:16px}.app-header{height:70px;border-bottom:0}.brand span:last-child{display:none}.header-actions{gap:6px}.locale-links a,.theme-switcher button{min-width:31px}.hero{text-align:start;margin-bottom:22px}.hero h1{font-size:42px}.hero>p:last-child{font-size:15px}.counter-card{padding:20px 16px 24px;border-radius:23px}.preset-group{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:20px}.counter-button{width:min(270px,72vw)}.counter-core strong{font-size:88px}.selected-dhikr{font-size:21px}.goal-form{grid-template-columns:1fr}.tracker-details{grid-template-columns:1fr;margin-top:16px}.trend-card{grid-column:auto}.detail-card{padding:18px;border-radius:20px}.history-list{grid-template-columns:1fr}footer{display:block;padding-top:24px;padding-bottom:24px}footer span{display:block;margin-top:7px}}
@media(max-width:370px){.counter-button{width:240px}.counter-core strong{font-size:78px}.counter-card{padding-inline:12px}.goal-picker{gap:8px}.goal-option{min-width:50px;padding-inline:9px}.goal-management-actions{grid-template-columns:1fr}.manual-form{grid-template-columns:1fr}.manual-form button{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.counter-button,.counter-core{animation:none!important;transition:none!important}}
[hidden]{display:none!important}

/* Tasbih v5: the primary counter stays simple; richer controls progressively disclose. */
.counter-button[data-count-size="xl"] .counter-core strong{font-size:clamp(84px,15vw,126px)}
.counter-button[data-count-size="lg"] .counter-core strong{font-size:clamp(72px,12vw,100px);letter-spacing:-.065em}
.counter-button[data-count-size="md"] .counter-core strong{font-size:clamp(58px,9vw,78px);letter-spacing:-.055em}
.counter-button[data-count-size="sm"] .counter-core strong{font-size:clamp(43px,7vw,60px);letter-spacing:-.045em}
.counter-button[data-long-name="true"] .selected-dhikr{display:-webkit-box;font-family:var(--font);font-size:16px;line-height:1.25;white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.counter-actions #toggle-manager{color:var(--muted)}
.main-milestones{width:min(510px,100%);margin:3px auto 0;padding:13px 15px 0}
.milestone-journey{--milestone-progress:0%;--milestone-columns:4;position:relative;display:grid;grid-template-columns:repeat(var(--milestone-columns),minmax(0,1fr));align-items:start;gap:3px}
.milestone-journey::before,.milestone-journey::after{content:"";position:absolute;z-index:0;top:13px;inset-inline-start:10%;height:2px;border-radius:999px}
.milestone-journey::before{inset-inline-end:10%;background:var(--track)}
.milestone-journey::after{width:min(80%,calc(var(--milestone-progress) * .8));background:linear-gradient(90deg,var(--emerald-bright),var(--gold-bright));box-shadow:0 0 12px color-mix(in srgb,var(--gold) 30%,transparent);transition:width .42s cubic-bezier(.2,.8,.2,1)}
.milestone-node{position:relative;z-index:1;display:grid;place-items:center;gap:5px;color:var(--muted);font-size:10px;text-align:center}
.milestone-node strong{font-size:10px;font-variant-numeric:tabular-nums}
.milestone-dot{display:grid;place-items:center;width:27px;height:27px;border:2px solid var(--panel-solid);border-radius:50%;background:color-mix(in srgb,var(--panel-solid) 94%,var(--track));box-shadow:0 0 0 1px var(--line);color:var(--muted);font-size:8px}
.milestone-node.is-reached{color:var(--gold)}
.milestone-node.is-reached .milestone-dot{background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#172117;box-shadow:0 0 0 1px color-mix(in srgb,var(--gold) 55%,var(--line)),0 0 18px color-mix(in srgb,var(--gold) 25%,transparent)}
.milestone-node.is-new .milestone-dot{animation:milestone-node-in .48s cubic-bezier(.2,.9,.2,1)}
.milestone-journey[data-columns="1"]::before,.milestone-journey[data-columns="1"]::after{display:none}
.next-milestone{margin:8px 0 0;color:var(--muted);font-size:11px;font-weight:750;text-align:center}
.milestone-celebration{position:absolute;z-index:8;top:70px;left:50%;display:grid;width:min(290px,calc(100% - 34px));padding:14px 18px;border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));border-radius:18px;background:color-mix(in srgb,var(--panel-solid) 94%,var(--gold) 6%);box-shadow:0 20px 60px rgba(0,0,0,.23),0 0 44px color-mix(in srgb,var(--gold) 20%,transparent);text-align:center;transform:translate(-50%,-8px) scale(.94);opacity:0;pointer-events:none}
.milestone-celebration.is-active{animation:milestone-toast 2.8s cubic-bezier(.2,.8,.2,1) both}
.celebration-icon{color:var(--gold);font-size:24px;line-height:1}
.milestone-celebration strong{margin-top:5px;color:var(--ink);font-size:15px}
.milestone-celebration>span:not(.celebration-icon){color:var(--muted);font-size:12px}
.celebration-sparks{position:absolute;inset:50%;pointer-events:none}
.celebration-sparks i{--spark-angle:0deg;--spark-delay:0ms;position:absolute;width:6px;height:6px;border-radius:50%;background:var(--gold-bright);transform:rotate(var(--spark-angle)) translateX(26px);opacity:0}
.milestone-celebration.is-active .celebration-sparks i{animation:milestone-spark .7s var(--spark-delay) ease-out both}
@keyframes milestone-node-in{0%{transform:scale(.65);filter:brightness(1.6)}65%{transform:scale(1.18)}100%{transform:scale(1)}}
@keyframes milestone-toast{0%{opacity:0;transform:translate(-50%,-8px) scale(.94)}10%,78%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-5px) scale(.98)}}
@keyframes milestone-spark{0%{opacity:0;transform:rotate(var(--spark-angle)) translateX(22px) scale(.4)}20%{opacity:1}100%{opacity:0;transform:rotate(var(--spark-angle)) translateX(82px) scale(0)}}
.start-import-label{display:inline-flex;margin:14px auto 0;padding:7px 10px;border-radius:9px;color:var(--muted);font-size:12px;font-weight:800;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--muted) 35%,transparent);text-underline-offset:3px;cursor:pointer}
.start-import-label:hover{color:var(--ink)}
.start-import-status:empty{display:none}
.start-import-status{margin:13px auto 0;text-align:start}
.goal-manager{width:min(620px,100%)}
.manager-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:2px}
.manager-option,.use-goal,.replace-import,.cancel-import,.import-preview-actions button{min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--bg) 42%,transparent);color:var(--ink);font-size:11px;font-weight:850;cursor:pointer}
.manager-option:disabled{opacity:.38;cursor:not-allowed}
.manager-option.is-confirming{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));color:var(--danger)}
.manager-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.use-goal{color:var(--success)}
.tracker-details{grid-template-columns:repeat(2,minmax(0,1fr))}
.trend-card,.data-card{grid-column:1/-1}
.chart-wrap{overflow:hidden}
.chart-axis,.chart-grid{vector-effect:non-scaling-stroke}
.chart-axis{stroke:var(--line-strong);stroke-width:1.2}
.chart-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:3 5}
.chart-y-label,.chart-axis-title,.chart-date,.chart-value{fill:var(--muted);font-family:var(--font)}
.chart-y-label{font-size:11px;font-weight:750;font-variant-numeric:tabular-nums}
.chart-axis-title{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.chart-date{font-size:10px;font-weight:650}
.chart-value{fill:var(--ink);font-size:10px;font-weight:850;font-variant-numeric:tabular-nums}
.chart-bar{transition:y .35s ease,height .35s ease}
.data-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:17px}
.data-actions button,.import-label{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--bg) 42%,transparent);color:var(--ink);font-size:12px;font-weight:850;text-align:center;cursor:pointer}
.import-label:hover{border-color:var(--line-strong)}
.data-note{margin:12px 0 0;color:var(--muted);font-size:11px}
.import-status:empty{display:none}
.import-status,.start-import-status{margin:14px 0 0;padding:13px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--bg) 30%,transparent);font-size:12px}
.import-message{display:block;color:var(--muted)}
.import-message[data-tone="success"]{color:var(--success)}
.import-message[data-tone="error"]{color:var(--danger)}
.import-message[data-tone="warning"]{color:var(--gold)}
.import-preview-copy{margin:0;color:var(--ink);font-weight:750}
.import-preview-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:11px}
.replace-import{border-color:color-mix(in srgb,var(--danger) 40%,var(--line));color:var(--danger)}
@media(max-width:700px){.counter-button[data-count-size="xl"] .counter-core strong{font-size:88px}.counter-button[data-count-size="lg"] .counter-core strong{font-size:72px}.counter-button[data-count-size="md"] .counter-core strong{font-size:57px}.counter-button[data-count-size="sm"] .counter-core strong{font-size:43px}.main-milestones{padding-inline:3px}.milestone-node strong{font-size:9px}.milestone-dot{width:24px;height:24px}.milestone-journey::before,.milestone-journey::after{top:12px}.tracker-details{grid-template-columns:1fr}.trend-card,.data-card{grid-column:auto}.data-actions,.import-preview-actions{grid-template-columns:1fr}.manager-toolbar{grid-template-columns:1fr 1fr}.manager-toolbar .manager-option:last-child{grid-column:1/-1}.chart-wrap{margin-inline:-7px}}
@media(max-width:370px){.counter-button[data-count-size="xl"] .counter-core strong{font-size:78px}.counter-button[data-count-size="lg"] .counter-core strong{font-size:64px}.counter-button[data-count-size="md"] .counter-core strong{font-size:51px}.counter-button[data-count-size="sm"] .counter-core strong{font-size:39px}.main-milestones{padding-inline:0}}
@media(prefers-reduced-motion:reduce){.milestone-node.is-new .milestone-dot,.milestone-celebration.is-active,.milestone-celebration.is-active .celebration-sparks i{animation:none!important}.milestone-celebration.is-active{opacity:1;transform:translate(-50%,0)}.milestone-journey::after,.chart-bar{transition:none!important}}
.primary{color:var(--on-accent)!important}
.counter-core{width:78%;min-width:0}
.counter-core strong{display:block;max-width:100%;overflow:visible;white-space:nowrap;text-align:center;line-height:1}
.counter-core strong,.counter-button[data-count-size="lg"] .counter-core strong,.counter-button[data-count-size="md"] .counter-core strong,.counter-button[data-count-size="sm"] .counter-core strong,.counter-button[data-count-size="xs"] .counter-core strong{letter-spacing:0}
.counter-core .selected-dhikr{width:100%;text-align:center}
.counter-button[data-count-size="xs"] .counter-core strong{font-size:clamp(21px,3vw,27px)}
.start-import-label:focus-visible,.import-label:focus-visible{outline:3px solid color-mix(in srgb,var(--gold) 62%,transparent);outline-offset:3px}
#weekly-chart{direction:ltr}
[dir="rtl"] .eyebrow,[dir="rtl"] .active-label,[dir="rtl"] .counter-core>span:last-child,[dir="rtl"] .chart-axis-title{letter-spacing:0}
footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:25px 0 34px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
footer a{color:var(--ink);font-weight:800;text-decoration:none}
footer a:hover{text-decoration:underline;text-underline-offset:3px}
.storage-warning{position:fixed;z-index:1000;inset-inline:16px;bottom:max(16px,env(safe-area-inset-bottom));width:min(660px,calc(100% - 32px));margin:auto;padding:13px 16px;border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line));border-radius:14px;background:var(--panel-solid);box-shadow:0 18px 50px rgba(0,0,0,.24);color:var(--danger);font-size:13px;font-weight:750;text-align:center}
@media(max-width:700px){.counter-button[data-count-size="xs"] .counter-core strong{font-size:21px}.chart-y-label,.chart-label,.chart-value{font-size:12px}.chart-date,.chart-axis-title{font-size:11px}}
@media(max-width:370px){.counter-button[data-count-size="xs"] .counter-core strong{font-size:19px}}
.start-card{width:min(560px,100%);margin:0 auto;padding:30px 34px;border:1px solid var(--line);border-radius:30px;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--emerald) 10%,transparent),transparent 48%),var(--panel);box-shadow:var(--shadow);text-align:center}.start-card h2{margin:0;font-size:clamp(25px,3vw,34px);letter-spacing:-.04em}.start-card>p:not(.privacy-note){max-width:420px;margin:10px auto 22px;color:var(--muted);font-size:15px}.start-actions,.counter-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.start-actions button,.counter-options button{display:flex;align-items:center;justify-content:center;min-height:50px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 46%,transparent);color:var(--ink);font:800 13px/1 var(--font);cursor:pointer}.active-label{margin:2px 0 10px;text-align:center;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.18em}.counter-options{max-width:410px;margin:10px auto 0}.counter-options button:last-child{grid-column:1/-1;min-height:40px;color:var(--muted);font-size:12px}.goal-form>h2,.goal-form>p{grid-column:1/-1;margin:0}.goal-form>h2{font-size:22px;letter-spacing:-.025em}.goal-form>p{color:var(--muted);font-size:13px}.progress-tools{width:min(850px,100%);margin:22px auto 0;border:1px solid var(--line);border-radius:20px;background:var(--panel);overflow:hidden}.progress-tools summary{padding:16px 20px;color:var(--ink);font-size:13px;font-weight:850;cursor:pointer}.progress-tools[open] summary{border-bottom:1px solid var(--line)}.progress-tools .tracker-details{width:auto;margin:0;padding:16px}.progress-tools .detail-card{box-shadow:none}@media(max-width:700px){.start-card{padding:24px 18px;border-radius:23px}.start-actions{grid-template-columns:1fr}.counter-options{grid-template-columns:1fr}.counter-options button:last-child{grid-column:auto}.progress-tools .tracker-details{padding:12px}.goal-form>h2{font-size:20px}}
.quick-entry{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;max-width:510px;margin:3px auto 0;padding:10px;border:1px solid var(--line);border-radius:16px;background:color-mix(in srgb,var(--bg) 28%,transparent)}.quick-entry label{display:grid;gap:4px;color:var(--muted);font-size:10px;font-weight:850}.quick-entry input{width:100%;min-height:42px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:var(--panel-solid);color:var(--ink);font:inherit}.quick-entry button{display:flex;align-self:end;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--bg) 46%,transparent);color:var(--ink);font:800 12px/1 var(--font);cursor:pointer}.quick-entry .quick-entry-date{grid-column:1/-1}.quick-entry-date[hidden]{display:none}.quick-entry:has(.quick-entry-date:not([hidden])){grid-template-columns:minmax(0,1fr) auto}.quick-entry:has(.quick-entry-date:not([hidden])) #quick-entry-date-toggle{grid-column:2}.quick-entry:has(.quick-entry-date:not([hidden])) .quick-entry-date{grid-row:2}.quick-entry:has(.quick-entry-date:not([hidden])) .quick-entry-date input{min-width:0}@media(max-width:700px){.quick-entry{grid-template-columns:1fr 1fr}.quick-entry-amount{grid-column:1/-1}.quick-entry button{min-height:45px}.quick-entry:has(.quick-entry-date:not([hidden])){grid-template-columns:1fr 1fr}.quick-entry:has(.quick-entry-date:not([hidden])) #quick-entry-date-toggle{grid-column:auto}.quick-entry:has(.quick-entry-date:not([hidden])) .quick-entry-date{grid-column:1/-1;grid-row:auto}}
.goal-switcher{display:grid;gap:6px;width:min(510px,100%);margin:0 auto 18px;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.goal-switcher select{width:100%;min-height:50px;padding:0 14px;border:1px solid color-mix(in srgb,var(--gold) 48%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--panel-solid) 88%,var(--gold) 12%);box-shadow:0 8px 24px color-mix(in srgb,var(--gold) 9%,transparent);color:var(--ink);font:800 14px/1.25 var(--font);letter-spacing:0;text-transform:none;cursor:pointer}.goal-switcher select:hover{border-color:color-mix(in srgb,var(--gold) 76%,var(--line))}[dir="rtl"] .goal-switcher{letter-spacing:0}@media(max-width:700px){.goal-switcher{margin-bottom:14px}.goal-switcher select{min-height:52px;font-size:13px}}
