.cloud-card{padding:var(--space-4);margin:var(--space-3) 0}.cloud-card h2{font-size:1.15rem;margin-bottom:10px}.cloud-card h3{margin-top:18px;font-size:1rem}.cloud-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.cloud-actions .btn{min-height:44px}.cloud-list{display:grid;gap:12px;margin:14px 0}.cloud-list>.btn{justify-content:flex-start;text-align:start;white-space:normal;overflow-wrap:anywhere}.cloud-summary{display:grid;gap:6px;padding:12px 0;overflow-wrap:anywhere}.cloud-check{display:flex;gap:var(--space-2);align-items:center;min-height:44px;margin:16px 0}.cloud-check input{width:22px;height:22px;accent-color:var(--turq)}.cloud-conflict{padding:12px 0;border-bottom:1px solid var(--line)}.cloud-conflict pre{overflow:auto;max-height:180px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem}.cloud-search{padding:0 var(--page-gutter)}.cloud-members{list-style:none;padding:0;display:grid;gap:var(--space-2)}.cloud-members li{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 0;border-bottom:1px solid var(--line)}.cloud-shortcuts{padding:0 var(--page-gutter)}.cloud-error{margin:10px 0}.cloud-card p{overflow-wrap:anywhere}.cloud-card .small{margin:8px 0}#sheetPanel .cloud-summary{border-bottom:1px solid var(--line)}

.cloud-preview{margin:12px var(--page-gutter);padding:12px;border:1px solid var(--line);border-radius:12px;font-size:var(--support-size);color:var(--muted);text-align:center}

/* Profile and community surfaces use the app's existing colour and type tokens. */
.cloud-page{padding:var(--page-gutter);display:grid;gap:var(--space-3)}.cloud-intro{color:var(--muted);font-size:var(--support-size);max-width:46ch;line-height:1.65}.cloud-surface{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:var(--space-4);min-width:0}.cloud-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cloud-section-head h2{font-size:1rem;font-weight:800;line-height:1.35}.cloud-section-description{color:var(--muted);font-size:var(--support-size);line-height:1.65;margin-bottom:16px}.cloud-profile-hero{background:var(--card);border:1px solid var(--line);border-radius:24px;overflow:hidden}.cloud-cover{height:80px;background:linear-gradient(120deg,var(--sky1),var(--sky2));position:relative}.cloud-cover::after{content:'';position:absolute;width:180px;height:180px;border:1px solid #ffffff24;border-radius:50%;inset-inline-end:-34px;top:-82px;box-shadow:0 0 0 28px #ffffff07,0 0 0 56px #ffffff05}.cloud-profile-identity{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;padding:0 var(--space-4);margin-top:-36px;position:relative}.cloud-avatar{display:grid;place-items:center;width:84px;height:84px;flex:none;background:var(--turq-soft);color:var(--turq);font-family:var(--serif);font-size:1.8rem;font-weight:600;border:5px solid var(--card);border-radius:26px;line-height:1}.cloud-avatar.small-avatar{width:46px;height:46px;border:0;border-radius:15px;font-size:1rem}.cloud-identity-actions{padding-bottom:3px}.cloud-identity-actions .btn{font-size:var(--support-size);padding:10px 16px}.cloud-profile-copy{padding:var(--space-4)}.cloud-profile-copy h2{font-family:var(--serif);font-weight:500;font-size:1.7rem;line-height:1.25;overflow-wrap:anywhere}.cloud-handle{color:var(--muted);font-size:var(--support-size);margin-top:6px;text-align:start;unicode-bidi:plaintext}.cloud-bio{font-size:var(--support-size);line-height:1.7;margin-top:15px;white-space:pre-wrap;overflow-wrap:anywhere}.cloud-profile-copy>.small{margin-top:14px}.cloud-profile-metrics{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 12px;gap:6px}.cloud-profile-metrics>*{border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:58px;gap:4px;padding:6px;color:var(--ink);text-align:center}.cloud-profile-metrics>*+*{border-inline-start:1px solid var(--line)}.cloud-profile-metrics b{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums}.cloud-profile-metrics span{font-size:var(--meta-size);color:var(--muted);overflow-wrap:anywhere}.cloud-pill{display:inline-flex;align-items:center;min-height:26px;font-size:var(--meta-size);font-weight:800;line-height:1.3;background:var(--fill);color:var(--muted);padding:5px 9px;border-radius:8px;max-width:100%;text-align:center;overflow-wrap:anywhere}.cloud-pill.active{background:var(--turq-soft);color:var(--turq)}.cloud-preference{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px 0}.cloud-preference>span{min-width:0}.cloud-preference b{font-size:.9rem;font-weight:700;display:block}.cloud-preference small{display:block;color:var(--muted);font-size:.8rem;line-height:1.65;margin-top:6px}.cloud-preference .switch{flex:none}.cloud-privacy-note{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:.8rem;color:var(--muted);line-height:1.7}.cloud-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cloud-progress-grid>div{background:var(--fill);border-radius:15px;padding:16px;min-width:0}.cloud-progress-grid b{font-family:var(--serif);font-size:1.9rem;line-height:1.15;display:block;font-weight:500;font-variant-numeric:tabular-nums}.cloud-progress-grid span{display:block;color:var(--muted);font-size:var(--support-size);margin-top:8px}.cloud-footnote{font-size:var(--meta-size);color:var(--muted);margin-top:14px;overflow-wrap:anywhere}.cloud-private-note{padding:0 8px;font-size:var(--support-size);color:var(--muted);text-align:center}.cloud-zikr-card{border:1px solid var(--line);border-radius:16px;padding:16px;min-width:0;background:var(--card)}.cloud-zikr-card+.cloud-zikr-card{margin-top:12px}.cloud-zikr-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cloud-zikr-card h3{font-size:.95rem;font-weight:800;line-height:1.5;overflow-wrap:anywhere;min-width:0;flex:1}.cloud-zikr-title .cloud-pill{flex:none;max-width:40%}.cloud-zikr-text{margin-top:10px}.cloud-zikr-text summary{font-size:.8rem;font-weight:600;color:var(--muted);cursor:pointer;padding:8px 0}.cloud-zikr-ar{font-family:var(--ar);font-size:1.7rem;line-height:1.9;margin:16px 0 10px;white-space:pre-wrap;overflow-wrap:anywhere}.cloud-zikr-meaning{color:var(--ink2);font-size:.88rem;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:10px}.cloud-zikr-footer{display:flex;align-items:center;gap:var(--space-2);border-top:1px solid var(--line);margin-top:14px;padding-top:10px}.cloud-share-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;background:none;border:0;text-align:start;flex:1;min-height:48px;padding:0;font-size:var(--support-size);font-weight:700}.cloud-share-toggle>.switch{flex:none;pointer-events:none}.cloud-share-toggle[disabled]{opacity:.55;cursor:wait}.cloud-person-row{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:12px;padding:14px 0;text-align:start;min-height:76px;color:var(--ink)}.cloud-person-row+.cloud-person-row{border-top:1px solid var(--line)}.cloud-person-text{min-width:0;flex:1}.cloud-person-text b{font-size:.95rem;display:block;font-weight:800;overflow-wrap:anywhere}.cloud-person-text>span{display:block;font-size:var(--support-size);color:var(--muted);margin-top:3px;unicode-bidi:plaintext}.cloud-person-text small{display:block;font-size:var(--support-size);color:var(--muted);margin-top:7px;line-height:1.5;overflow-wrap:anywhere}.cloud-row-arrow{color:var(--muted);display:grid;place-items:center;flex:none}.cloud-row-arrow svg{width:18px;height:18px}[dir=rtl] .cloud-row-arrow svg{transform:scaleX(-1)}.cloud-empty{text-align:center;padding:32px 10px;color:var(--muted)}.cloud-empty>svg{width:32px;height:32px;margin-bottom:14px;opacity:.6}.cloud-empty h3{font-size:.95rem;color:var(--ink);line-height:1.5}.cloud-empty p{font-size:var(--support-size);line-height:1.7;margin-top:8px}.cloud-empty .btn{margin-top:18px}.cloud-empty.compact{padding:10px 0}.cloud-empty.compact p{margin:0}.cloud-filter-row{display:flex;gap:8px;flex-wrap:wrap}.cloud-filter-row .btn{font-size:.8rem;padding:9px 14px}.cloud-filter-row [aria-pressed=true]{background:var(--turq-soft);color:var(--turq);border-color:var(--turq)}.cloud-page .cloud-search{display:flex;align-items:flex-end;gap:var(--space-2);padding:0}.cloud-search .field{min-width:0;flex:1;margin:0}.cloud-search .btn{width:48px;height:48px;padding:0;border-radius:14px;flex:none}.cloud-search .btn svg{width:20px;height:20px}.cloud-search .inp{height:48px}.cloud-account-entry.cloud-card{margin:var(--space-3) var(--page-gutter);padding:var(--space-4)}.cloud-account-entry .cloud-person-row{padding:0 0 16px;min-height:62px}.cloud-account-entry .cloud-actions{margin:16px 0 0;gap:8px}.cloud-account-entry .cloud-actions .btn{font-size:.8rem;padding:10px 14px}.cloud-eyebrow{display:block;color:var(--turq);font-size:var(--meta-size);font-weight:800;letter-spacing:.1em;margin-bottom:6px}.cloud-account-entry .cloud-email{margin-top:15px}.cloud-account-status{display:flex;align-items:center;gap:7px;border-top:1px solid var(--line);padding-top:12px;font-size:.75rem;color:var(--muted);flex-wrap:wrap}.cloud-account-status .btn{margin-inline-start:auto;font-size:.75rem;padding:7px 12px;min-height:40px;background:none}.cloud-status-dot{width:7px;height:7px;background:var(--turq);border-radius:50%;flex:none}.cloud-status-dot.pending{background:var(--amber)}.cloud-management{border-top:1px solid var(--line);padding-top:14px;margin-top:18px}.cloud-management>summary,.cloud-safety>summary{font-size:var(--support-size);font-weight:700;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;list-style:none}.cloud-management>summary::after,.cloud-safety>summary::after{content:'+';font-size:1.2rem;color:var(--muted)}.cloud-management[open]>summary::after,.cloud-safety[open]>summary::after{content:'−'}.cloud-email{font-size:.9rem;overflow-wrap:anywhere}.cloud-private-account .cloud-actions{margin-bottom:0}.cloud-private-account .cloud-actions .btn{font-size:.8rem}.cloud-safety{padding:0 16px;color:var(--muted)}.cloud-safety .cloud-actions{margin-top:0}.cloud-profile-form>.small{padding-bottom:8px;line-height:1.7}.cloud-form-section{border-bottom:1px solid var(--line);padding:16px 0}.cloud-form-section .field:first-child{margin-top:0}.cloud-form-section .cloud-check{margin:0}.cloud-check{align-items:flex-start}.cloud-check input{flex:none;margin-top:2px}.cloud-check b{display:block;font-size:.88rem}.cloud-check small{display:block;color:var(--muted);font-size:.8rem;line-height:1.65;margin-top:6px}.cloud-form-section .small{line-height:1.7;margin-top:8px}.cloud-editor-sharing{border-top:1px solid var(--line);padding-top:16px}.cloud-profile-form textarea{resize:vertical;min-height:100px}.cloud-shortcuts .btn{font-size:.8rem;flex:1;padding:10px 12px}.cloud-shortcuts{margin-top:28px;margin-bottom:0}
@media(max-width:360px){.cloud-page{padding:var(--page-gutter);gap:var(--space-3)}.cloud-surface{padding:16px}.cloud-profile-copy{padding:16px 18px}.cloud-profile-identity{padding:0 16px}.cloud-identity-actions .btn{padding:9px 12px;font-size:.75rem}.cloud-zikr-card{padding:12px}.cloud-zikr-title{flex-wrap:wrap}.cloud-zikr-title .cloud-pill{max-width:100%}.cloud-profile-metrics{padding:10px 6px}.cloud-profile-metrics span{font-size:var(--meta-size)}}
@media(prefers-reduced-motion:no-preference){.cloud-person-row,.cloud-share-toggle,.cloud-profile-metrics button{transition:background-color .15s}.cloud-person-row:hover{background:var(--fill);border-radius:12px}.cloud-profile-metrics button:hover{background:var(--fill);border-radius:12px}}

/* Today keeps counting first. Normal flow and one spacing scale prevent overlaps. */
.today-page{display:flex;flex-direction:column;gap:16px;padding-bottom:8px}.today-page>.sky{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 18px;border-radius:0 0 24px 24px;background-image:linear-gradient(155deg,var(--sky2),var(--sky1))}.today-page .sky-bar{flex-wrap:nowrap;gap:var(--space-2)}.today-page .sky-hello{min-width:0;font-size:1.05rem;font-weight:700;opacity:1;line-height:1.4}.today-page .sky-actions{gap:2px}.today-page .user-switch{font-size:.75rem;padding:7px 10px;min-height:44px}.today-date{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;border:0;border-top:1px solid #ffffff1f;background:none;text-align:start;color:inherit;margin-top:10px;padding:12px 0 0;min-height:64px}.today-date>span{min-width:0}.today-hijri{display:block;font-family:var(--serif);font-size:1.04rem;line-height:1.45;overflow-wrap:anywhere}.today-date .h-sub{display:block;margin-top:2px;font-size:.75rem;line-height:1.5}.today-date .moon{width:48px;height:48px;filter:none}.today-page>.card{width:calc(100% - 32px);margin:0 16px}.today-page>.resume-card{border-color:var(--lapis);box-shadow:var(--shadow)}.today-page .resume-main{min-height:92px;padding:18px;gap:var(--space-6)}.today-page .resume-info strong{font-size:1.1rem}.today-page .resume-card .play{width:48px;height:48px}.today-page .resume-clear{min-height:44px;padding:10px 18px;color:var(--turq);font-size:var(--support-size);font-weight:700}.today-page .pulse-card{position:static;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:12px;padding:16px}.today-page .metric b{font-family:var(--ui);font-size:1.35rem;font-weight:800;line-height:1.2}.today-page .metric span{font-size:var(--meta-size);line-height:1.4;display:block;margin-top:3px}.today-page .week{gap:6px}.today-page .wkd{font-size:var(--meta-size);gap:5px}.today-page .wkd i{width:9px;height:9px}.today-section{padding:0 16px;display:flex;flex-direction:column;gap:var(--space-2)}.today-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.today-section-heading h2{font-size:1rem;font-weight:800;line-height:1.4}.today-section-heading .link{font-size:.8rem;min-height:44px;flex:none}.today-section>.card{margin:0;width:100%;box-shadow:none;border:1px solid var(--line);border-radius:18px}.today-empty-plan{padding:16px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.today-empty-plan p{font-size:var(--support-size);color:var(--muted);flex:1;min-width:150px}.today-empty-plan .btn{font-size:.75rem;background:none}.today-plan-list .plan-row{padding:15px 14px;min-height:78px;gap:12px}.today-plan-list .plan-row b{font-size:var(--support-size);white-space:normal;overflow-wrap:anywhere}.today-plan-list .plan-row span{font-size:.75rem}.today-favourites{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.today-zikr{display:flex;align-items:center;gap:var(--space-2);justify-content:space-between;min-width:0;min-height:84px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;text-align:start}.today-zikr-copy{min-width:0}.today-zikr b{display:block;font-size:var(--support-size);line-height:1.45;overflow-wrap:anywhere}.today-zikr small{display:block;font-size:var(--meta-size);color:var(--muted);margin-top:5px}.today-zikr .play{width:30px;height:30px;background:var(--turq-soft);color:var(--turq)}.today-zikr .play svg{width:13px;height:13px}.today-extra{margin:0 16px;border-top:1px solid var(--line)}.today-extra>summary{display:flex;align-items:center;gap:12px;min-height:56px;padding:8px 0;list-style:none;cursor:pointer;font-size:var(--support-size);font-weight:700;color:var(--ink2)}.today-extra>summary::-webkit-details-marker{display:none}.today-extra>summary>span{flex:1;min-width:0}.today-extra>summary>svg{width:20px;height:20px;flex:none;color:var(--muted)}.today-extra>summary>svg:last-child{width:16px;height:16px;transition:transform .15s}.today-extra[open]>summary>svg:last-child{transform:rotate(90deg)}[dir=rtl] .today-extra>summary>svg:last-child{transform:rotate(180deg)}[dir=rtl] .today-extra[open]>summary>svg:last-child{transform:rotate(90deg)}.today-extra>.card,.today-extra-content>.card{margin:0;width:100%}.today-extra-content{display:grid;gap:12px;padding-bottom:4px}.today-upcoming{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.today-upcoming .up{width:100%;max-width:none;min-width:0;border:1px solid var(--line);box-shadow:none}.today-charity .charity-note{margin-top:0}.today-page+.site-credit{padding-top:12px}
@media(max-width:360px){.today-page .pulse-card{gap:8px;padding:14px}.today-page .week{gap:5px}.today-page .wkd i{width:8px;height:8px}.today-page .sky-actions .user-switch{max-width:100px;line-height:1.25}.today-zikr{padding:12px;gap:8px}.today-zikr .play{width:26px;height:26px}.today-page .metric span{font-size:var(--meta-size)}.today-page .sky-hello{font-size:var(--support-size)}}

.cloud-personal-zikrs{padding:0;overflow:hidden}.cloud-personal-zikrs>summary{display:flex;align-items:center;gap:12px;min-height:64px;padding:16px 20px;cursor:pointer;list-style:none}.cloud-personal-zikrs>summary::-webkit-details-marker{display:none}.cloud-personal-zikrs>summary h2{font-size:1rem;font-weight:800;line-height:1.35;flex:1;min-width:0}.cloud-disclosure-icon{display:flex;align-items:center;color:var(--muted);transform:rotate(90deg)}.cloud-personal-zikrs[open] .cloud-disclosure-icon{transform:rotate(-90deg)}.cloud-personal-zikrs-body{padding:0 16px 16px;border-top:1px solid var(--line)}.cloud-personal-zikrs-body>.cloud-section-head{padding-top:16px;justify-content:flex-end}.cloud-personal-zikrs>summary:focus-visible{outline:3px solid var(--turq);outline-offset:-4px}@media(max-width:360px){.cloud-personal-zikrs>summary{padding:14px 16px}.cloud-personal-zikrs-body{padding:0 16px 16px}}
.cloud-disclosure-icon{flex:none;width:18px;height:18px}.cloud-disclosure-icon>svg{width:18px;height:18px}

/* Authentication only: full-screen on phones, centered dialog on desktop. */
body.auth-open{overflow:hidden}
.sheet.auth-surface{background:var(--card);align-items:stretch;top:var(--auth-viewport-top,0px);bottom:auto;height:var(--auth-viewport-height,100dvh);animation:none;overscroll-behavior:contain}
.sheet-panel.auth-panel{width:100%;max-width:none;height:100%;max-height:none;border-radius:0;padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));animation:none;overscroll-behavior:contain;overflow-x:hidden;scroll-padding:16px}
.sheet-panel.auth-panel::before{display:none}
.auth-content{width:100%;max-width:400px;margin:0 auto;overflow-wrap:anywhere}
.auth-header{display:flex;align-items:center;gap:8px;margin:0 0 16px}
.auth-header h2{font-family:var(--serif);font-size:1.5rem;font-weight:400;line-height:1.25;min-width:0;flex:1;overflow-wrap:anywhere}
[dir=rtl] .auth-header h2{font-family:var(--ar)}
.auth-desktop-close{display:none}
.auth-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 10px;border:0;background:transparent;color:var(--lapis);font-weight:700;font-size:.88rem;line-height:1.5;text-decoration:underline;text-underline-offset:3px;white-space:normal;overflow-wrap:anywhere}
.auth-mobile-back{padding-inline:0;text-decoration:none;color:var(--ink2);justify-content:flex-start}
.auth-content .field{margin-top:16px}
.auth-content .auth-header+.field{margin-top:0}
.auth-content .inp{min-height:48px}
.auth-label-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px 12px;margin-bottom:8px}
.auth-label-row .flabel{margin:0}
.auth-forgot{margin-inline-start:auto;padding-inline:0;font-size:.8rem;text-align:end}
.auth-help{margin-top:8px;line-height:1.6}
.auth-security{margin-top:18px}
.auth-security .cloud-captcha{width:100%;min-height:65px;display:flex;justify-content:center}
.auth-security .cloud-captcha.compact{min-height:140px}
.auth-content .cloud-error{margin:14px 0 0;line-height:1.6;overflow-wrap:anywhere}
.auth-notice{margin:14px 0 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--turq-soft);color:var(--ink);font-size:.9rem;line-height:1.6}
.auth-submit{margin-top:18px}
.auth-submit .btn{min-height:48px;white-space:normal;overflow-wrap:anywhere}
.auth-switch{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 2px;margin-top:10px;font-size:var(--support-size);color:var(--muted);text-align:center}
.auth-guest{border-top:1px solid var(--line);margin-top:10px;padding-top:6px;text-align:center}
.auth-guest .auth-link{color:var(--ink2)}
@media(min-width:720px){
 .sheet.auth-surface{background:rgba(6,12,26,.55);align-items:center;padding:16px;top:0;height:100dvh}
 .sheet-panel.auth-panel{max-width:440px;height:auto;max-height:calc(100dvh - 32px);padding:24px;border-radius:22px}
 .auth-mobile-back{display:none}
 .auth-desktop-close{display:grid;margin-top:-8px;margin-inline-end:-8px}
 .auth-header{margin-top:0}
}

/* Everyday flows: visible library choices, calmer Settings, accessible long forms. */
.group-t,.foot-note{color:var(--ink2)}
.cal .grid7{grid-template-columns:repeat(7,minmax(0,1fr))}.cal .cell,.cal .wd{min-width:0}.cal .grid7 .cell{aspect-ratio:auto;min-height:max(44px,2.6rem)}.cal .wd{overflow-wrap:anywhere;line-height:1.3}.cal-nav>div{min-width:0;flex:1;overflow-wrap:anywhere}
@media(max-width:360px){.cal{margin-inline:var(--page-gutter,16px);padding-inline:6px}.cal .grid7{gap:2px}}
.vhead h1{min-width:0;overflow-wrap:anywhere}.tab{min-width:0;overflow-wrap:anywhere;line-height:1.35}.tab>span:not(.fab-c){max-width:100%}.app:not(.welcome){padding-bottom:var(--nav-space,calc(104px + env(safe-area-inset-bottom,0px)))}
.library-add{gap:6px;padding-inline:12px;white-space:normal;line-height:1.4;max-width:45%;flex:none}.library-add svg{width:18px;height:18px;flex:none}.library-filters{padding:0 16px}.library-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,4rem),1fr));gap:4px}#main .library-tabs .btn{white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%;min-height:44px;padding:9px 4px;font-size:.8rem;line-height:1.3}.library-tabs [aria-pressed=true]{background:var(--lapis);border-color:var(--lapis);color:var(--on-lapis)}.vhead:has(.library-add){flex-wrap:wrap}.vhead:has(.library-add) h1{min-width:0}.settings-disclosure{margin-top:var(--space-6);padding:0;overflow:hidden}.settings-disclosure>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:var(--space-3) var(--space-4);font-size:.95rem;font-weight:700;list-style:none}.settings-disclosure>summary::-webkit-details-marker{display:none}.settings-disclosure>summary::after{content:'+';font-size:1.2rem;color:var(--muted)}.settings-disclosure[open]>summary::after{content:'−'}.settings-disclosure[open]>summary{border-bottom:1px solid var(--line)}.settings-disclosure>summary:focus-visible{outline-offset:-4px}.settings-profile-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:24px}.settings-profile-actions .danger{border-color:color-mix(in srgb,var(--danger) 35%,var(--line))}.tab{font-size:.75rem}.cal .cell{min-height:44px}.pchip span{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;white-space:normal;overflow-wrap:anywhere}.form-schedule{border:0;padding:0;min-width:0}.form-schedule legend{padding:0;margin-bottom:8px}
body.form-open{overflow:hidden}.sheet.form-surface{background:var(--card);align-items:stretch;top:var(--form-viewport-top,0px);bottom:auto;height:var(--form-viewport-height,100dvh);animation:none;overscroll-behavior:contain}.sheet-panel.form-panel{width:100%;max-width:none;height:100%;max-height:none;border-radius:0;padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));animation:none;overflow-x:hidden;overscroll-behavior:contain;scroll-padding:16px}.form-panel::before{display:none}.flow-form{width:100%;max-width:400px;margin:0 auto;overflow-wrap:anywhere}.form-head{display:flex;align-items:center;gap:8px;margin:0 0 16px}.form-head h2{font-family:var(--serif);font-size:1.5rem;font-weight:400;line-height:1.3;min-width:0;flex:1;overflow-wrap:anywhere}.form-back{min-width:44px;min-height:44px;border:0;padding:8px 0;background:transparent;text-align:start;color:var(--ink2);font-size:.88rem;font-weight:700}.form-close{display:none}.flow-form .inp{min-height:48px;max-width:100%}.flow-form textarea{resize:vertical}.flow-form .row2>*{min-width:0}.form-panel .sh-foot{position:static;margin:20px 0 0;padding:16px 0 0;background:transparent;bottom:auto}.form-panel .sh-foot .btn{white-space:normal;overflow-wrap:anywhere;min-height:48px}.form-panel .summary{margin-bottom:12px;font-size:.9rem;line-height:1.6}.flow-form .pchip{max-width:100%}.flow-form .qchips button{min-width:44px;min-height:44px;white-space:normal}.flow-form .field{min-width:0}.flow-form .stepper input{width:100%;min-width:0;flex:1}.flow-form .swrow>div{min-width:0}.flow-form .swrow .switch{flex:none}[dir=rtl] .form-head h2{font-family:var(--ar)}
@media(max-width:360px){.flow-form .row2{grid-template-columns:minmax(0,1fr)}.vhead:has(.library-add){gap:4px;padding-inline:16px 8px}.library-add{font-size:var(--support-size);padding-inline:10px}}
@media(min-width:720px){.sheet.form-surface{background:rgba(6,12,26,.55);align-items:center;padding:16px;top:0;height:100dvh}.sheet-panel.form-panel{max-width:440px;height:auto;max-height:calc(100dvh - 32px);padding:24px;border-radius:22px}.form-back{display:none}.form-close{display:grid;margin-top:-8px;margin-inline-end:-8px}.form-head{margin-top:0}}

/* Shared audit corrections: boundaries, reflow and accessible data alternatives. */
:root{--control-line:#78849A;--turq:#14776F;--muted:#5D6980;--amber:#8A570D}
:root[data-theme=dark]{--control-line:#72809B;--turq:#56C6BA;--muted:#8E9AB2;--amber:#EFB24D}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--control-line:#72809B;--turq:#56C6BA;--muted:#8E9AB2;--amber:#EFB24D}}
button:not(.icon):not(.tab):not(.switch):not(.link):not(.form-back):not(.auth-link):not(.c-tap){white-space:normal;overflow-wrap:anywhere}
.inp,.txt,.btn:not(.primary),.seg button,.qchips button,.pchip span{border-color:var(--control-line)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--lapis);outline-offset:3px}
.skybg button:focus-visible{outline-color:#F3D493}
h1:focus,h2[tabindex="-1"]:focus,[role=heading][tabindex="-1"]:focus{outline:none}
.link,.qchips button,.stepper button{min-width:44px;min-height:44px}.switch{min-height:44px}.switch::before{top:50%;transform:translateY(-50%)}
body.sheet-open{overflow:hidden}.sheet{top:var(--surface-top,0px);bottom:auto;height:var(--surface-height,100dvh)}
.sheet.form-surface{top:var(--surface-top,0px);height:var(--surface-height,100dvh)}
.sheet-panel{scroll-padding:16px;overscroll-behavior:contain;overflow-x:hidden}.sh-head{align-items:flex-start}.sh-head h2{min-width:0;overflow-wrap:anywhere}.sheet-panel:not(.form-panel):not(.auth-panel){max-width:440px}
.cloud-page-error{padding:12px 16px;margin:12px 16px;border:1px solid var(--danger);border-radius:12px;background:var(--card)}
.cloud-page .cloud-search{padding:0}.cloud-filter-row .btn{flex:1;min-width:0;white-space:normal}.cloud-profile-identity{flex-wrap:wrap}.cloud-progress-grid span,.cloud-profile-metrics span{line-height:1.5}
.cloud-check{min-height:44px}.cloud-check input{width:24px;height:24px}.cloud-check:has(input:focus-visible){outline:3px solid var(--lapis);outline-offset:3px;border-radius:10px}
.cloud-list,.cloud-actions{min-width:0}.cloud-actions .btn{min-width:44px}.cloud-profile-form .cloud-form-section{padding-top:16px}.cloud-profile-form .field{margin-top:16px}
.data-details{margin-top:12px;color:var(--ink2)}.data-details>summary{display:flex;align-items:center;gap:var(--space-2);min-height:44px;cursor:pointer;font-size:var(--support-size);font-weight:700}.data-details>summary::after{content:'+';margin-inline-start:auto}.data-details[open]>summary::after{content:'−'}.data-details dl{max-height:280px;overflow:auto;margin:8px 0 0;padding:0 4px;font-size:var(--support-size)}.data-details dl>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:10px 0}.data-details dt{min-width:0;overflow-wrap:anywhere}.data-details dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}
.today-page .sky-hello{margin:0;min-width:0}.today-page .sky-bar{flex-wrap:wrap}.today-page .sky-actions{margin-inline-start:auto}.today-page .pulse-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.today-page .pulse-card>.week{grid-column:1/-1;justify-content:space-between}.today-page .week .wkd{font-size:var(--meta-size)}.today-page .wkd i{width:10px;height:10px}
.c-title,.c-sub{white-space:normal;overflow-wrap:anywhere;line-height:1.4}.c-top,.r-top{flex:none;align-items:flex-start;padding-top:max(8px,env(safe-area-inset-top,0px))}.c-top .icon,.r-top .icon{flex:none}.c-head{padding-top:8px}.c-stage{overflow-y:auto;overflow-x:hidden;justify-content:flex-start;touch-action:pan-y;gap:16px;padding:20px 16px;scroll-padding:16px}.c-stage>*:not(.c-tap):not(.ripple){flex-shrink:0}.c-tap{height:max(100%,var(--counter-stage-height,100%));touch-action:pan-y}.c-text{max-width:100%;overflow-wrap:anywhere}.c-stage .ring-wrap{margin-top:auto;margin-bottom:auto}.c-foot,.r-foot{flex:none;flex-wrap:wrap;padding-bottom:max(16px,env(safe-area-inset-bottom,0px));gap:8px}.c-after{flex-wrap:wrap;justify-content:center}.c-foot .pill{min-height:44px;max-width:100%;white-space:normal}.r-body{min-height:0;overflow-wrap:anywhere}.r-foot>*{min-width:0}.counter,.reader{top:var(--surface-top,0px);height:var(--surface-height,100dvh);bottom:auto}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.switch::after{top:50%;transform:translateY(-50%)}.switch[aria-checked=true]::after{transform:translate(20px,-50%)}

.counter,.reader{--c-muted:#B0BED8}.switch::before{background:var(--control-line)}

.switch::after{left:auto;right:auto;inset-inline-start:3px}[dir=rtl] .switch[aria-checked=true]::after{transform:translate(-20px,-50%)}

.tour-card{max-height:calc(var(--surface-height,100dvh) - 116px);overflow:auto;overscroll-behavior:contain;scroll-padding:16px}.tour-top,.tour-actions{flex-wrap:wrap}.tour-card button{min-width:44px;min-height:44px}
.cloud-zikr-text>summary{min-height:44px;display:flex;align-items:center;padding-block:10px;cursor:pointer}

.cloud-challenges-page>.cloud-actions,.cloud-challenges-page>.cloud-list,.cloud-challenges-page .cloud-card{margin:0}
/* Additional features reuse the existing card and accessible surface system. */
.feature-reminder{padding:var(--space-4);min-width:0;overflow-wrap:anywhere}.feature-reminder h2{font-size:1rem;line-height:1.4;margin:0 0 8px}.feature-reminder p{line-height:1.6;margin:0 0 16px}.feature-reminder .cloud-actions{margin:0;align-items:center;gap:var(--space-2)}.feature-reminder .cloud-actions .btn{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
.feature-invitation{border-inline-start:3px solid var(--amber)}.feature-friday{padding:8px 0 12px;text-align:center}.feature-friday p{margin:16px 0 24px;line-height:1.6}
.feature-details p{overflow-wrap:anywhere}.feature-details .feature-ar,.feature-sequence [lang="ar"]{font-family:var(--ar);font-size:1.65rem;line-height:1.85}.feature-sequence{margin-block:16px;padding-block-end:16px;border-bottom:1px solid var(--line)}.feature-details .badge{display:table;margin-block:20px}
.feature-photo{margin-bottom:24px}.feature-photo-row{display:flex;gap:16px;align-items:center;margin-block:12px}.feature-photo-actions{display:flex;align-items:flex-start;flex-direction:column;gap:8px}.feature-photo-actions button{min-height:44px}.feature-photo-preview{flex:none;width:80px;height:80px;overflow:hidden;position:relative}.feature-photo-preview>.cloud-avatar{width:100%;height:100%}
.cloud-avatar{position:relative;overflow:hidden}.cloud-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.feature-photo-preview>img{position:static}.feature-info{padding:12px;background:var(--fill);border:1px solid var(--line);border-radius:12px;line-height:1.5}
.reminder-window .reminder-intro{margin:0 0 20px;line-height:1.65}.reminder-window .reminder-section{padding:16px 0;border-top:1px solid var(--line);min-width:0}.reminder-window .reminder-section h3,.reminder-window .reminder-summary h3{font-size:.9rem;line-height:1.5;margin:0 0 8px}.reminder-window .reminder-section p{line-height:1.65;margin:0 0 12px}.reminder-window .reminder-choice{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-height:44px;cursor:pointer}.reminder-choice>span{min-width:0;flex:1}.reminder-choice b{display:block;font-size:.95rem;line-height:1.5}.reminder-choice small{display:block;font-size:.8rem;color:var(--muted);line-height:1.65;margin-top:4px}.reminder-choice input{width:22px;height:22px;flex:none;margin-top:3px;accent-color:var(--turq)}.reminder-window .field{margin:0}.reminder-window .reminder-time{margin-top:16px}.reminder-window [type=time]{width:100%;min-width:0}.reminder-window .reminder-help{margin:12px 0 0!important}.reminder-window .reminder-plan-help{margin:12px 0 0!important}.reminder-window .reminder-plan-link{display:block;text-align:start;white-space:normal;line-height:1.5;margin-top:8px}.reminder-window .reminder-device{padding:16px 0}.reminder-window .feature-device-status{font-weight:700;font-size:var(--support-size);line-height:1.5;margin:0}.reminder-window .reminder-permission{line-height:1.65;margin:8px 0 0}.reminder-window .reminder-summary{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--fill)}.reminder-window .reminder-summary p{font-size:var(--support-size);white-space:pre-line;line-height:1.65;margin:0}.reminder-window .reminder-error{margin-top:16px;line-height:1.6}.form-panel .reminder-window .sh-foot{margin:16px 0 0;padding:0;border:0}.reminder-window .sh-foot .link{min-height:44px;margin-top:8px}.reminder-window .reminder-calendar{margin-top:20px}.reminder-window .reminder-signin{margin-bottom:24px}.reminder-window .reminder-loading{display:grid;gap:16px;line-height:1.65}.reminder-window button{white-space:normal;overflow-wrap:anywhere;max-width:100%}
@media(max-width:360px){.feature-photo-row{gap:12px}.feature-photo-preview{width:64px;height:64px}}
/* Deliberate selection, readable details, and a clear next round. */
.library-hint{margin:12px 16px 16px;line-height:1.6}
.zc-preview{display:flex;align-items:center;gap:6px;margin-top:12px;font-size:.8rem;font-weight:600;color:var(--lapis)}
.zc-preview svg{width:16px;height:16px;flex:none}[dir="rtl"] .zc-preview svg{transform:scaleX(-1)}
.zc-foot{flex-wrap:wrap}.zc-foot .btn{white-space:normal;max-width:100%}
.feature-reading{display:grid;gap:14px;margin-bottom:20px}.feature-reading p{margin:0;line-height:1.7}.feature-reading .feature-ar{line-height:1.85}
.detail-goal{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:0 0 12px;font-size:var(--support-size);line-height:1.5}
.detail-goal .badge{margin:0}.detail-goal p{min-width:0;overflow-wrap:anywhere}
.form-panel .feature-details .sh-foot{margin:20px 0 0;padding:0;border:0}

.c-after .btn{min-height:48px;white-space:normal}

/* Quran passages retain verse boundaries; reading gestures never add counts. */
.recitation-verse{padding-block:12px;border-bottom:1px solid var(--line)}
.recitation-basmala{padding-block:4px 16px;text-align:center;border-bottom:1px solid var(--line)}
.recitation-basmala p,.recitation-verse p{margin:0;line-height:1.85}
.recitation-verse .recitation-transliteration{margin-top:8px;line-height:1.7;overflow-wrap:anywhere}
.verse-number{font-size:.7em;white-space:nowrap}.recitation-meaning{margin-block:16px 0!important;line-height:1.8}
.c-recitation{background:#14274A;pointer-events:auto;position:relative;z-index:2;max-height:min(36dvh,320px);overflow:auto;overscroll-behavior:contain;touch-action:pan-y;user-select:text;-webkit-user-select:text;cursor:auto;padding:12px 16px;border:1px solid #7185a7;border-radius:16px;text-align:start;scrollbar-gutter:stable}
.c-recitation .feature-ar{font-family:var(--ar);font-size:var(--ar-size);line-height:1.85}.c-recitation .recitation-verse,.c-recitation .recitation-basmala{border-color:#435574}.c-recitation .recitation-transliteration{color:#DCE4F4;font-size:var(--support-size)}.c-recitation .recitation-meaning{color:#DCE4F4;font-size:var(--support-size)}
.c-recitation:focus-visible{outline:3px solid #EDBD60;outline-offset:3px}

.recitation-credit{display:inline-flex;margin-top:12px;min-height:44px;align-items:center}.c-recitation .recitation-credit{color:#ACCAF5}

/* Long readings share the viewport with the beads rather than pushing them out. */
.counter .steps:empty{display:none}
.counter .c-foot .grow{display:none}
.counter .c-foot #cTarget{margin-inline-start:auto}
.reading-counter .c-stage{gap:12px;padding-block:12px}
.reading-counter .c-text{width:100%;max-width:36rem}
.reading-counter .c-recitation{max-height:min(calc(var(--surface-height,100dvh) * .30),280px);padding:12px 14px}
.reading-counter .c-recitation .feature-ar{font-size:calc(var(--ar-size) * .825);line-height:1.65}
.reading-counter .c-recitation p{margin:0}
.reading-counter .c-recitation .recitation-transliteration{margin-top:10px;font-size:.9rem;line-height:1.65}
.reading-counter .c-recitation .recitation-meaning{margin-top:12px!important;font-size:.9rem;line-height:1.65}
.reading-counter .ring-wrap{width:min(68vw,280px,calc(var(--surface-height,100dvh) * .32))}
.reading-counter .hint{margin:0;max-width:30rem;font-size:.8rem;line-height:1.5}
.reading-counter .c-count{font-size:clamp(3rem,15vw,5rem)}

/* Personal pronunciation text keeps its authored line breaks. */
.personal-transliteration{min-height:7rem;line-height:1.6;resize:vertical}
.feature-transliteration,.recitation-transliteration,.c-tr,.cloud-zikr-transliteration{white-space:pre-line;overflow-wrap:anywhere}
.cloud-zikr-transliteration{line-height:1.7}

/* Ordered personal routines. */
.routine-library-action{margin:0 0 16px}.routine-library-action .btn{justify-content:center}
.routine-editor-steps{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:12px}.routine-editor-steps li:not(.routine-empty){padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.routine-item-heading{display:flex;align-items:center;gap:8px}.routine-item-heading b{flex:1;min-width:0;overflow-wrap:anywhere}.routine-item-heading .icon{flex:none}
.routine-item-controls{display:flex;align-items:flex-end;gap:8px;margin-top:10px}.routine-item-controls .field{flex:1;min-width:0;margin:0}.routine-item-controls .btn{min-width:44px;min-height:44px;padding:8px}.routine-picker{padding:16px;border:1px solid var(--line);border-radius:16px;margin-bottom:20px}.routine-picker h3{margin-top:0}.routine-picker .btn{justify-content:center}
.routine-counter-status{order:-1;text-align:center;max-width:100%;pointer-events:none}.routine-counter-status span{color:var(--gold);font-weight:700;font-size:var(--support-size)}.routine-counter-status h3{margin:4px 0;overflow-wrap:anywhere;font-size:1rem}.routine-counter-status p{margin:4px 0;color:var(--c-muted);font-size:var(--support-size)}
.routine-counter .c-foot{opacity:1;align-items:center}.routine-counter #cRoutineNext{min-height:44px;max-width:100%;white-space:normal;position:relative;z-index:3;margin-inline-start:auto}.routine-counter #cRoutineNext:disabled{opacity:.6}.routine-counter .c-stage{gap:var(--space-2)}.routine-counter .c-text{margin-top:0}.routine-counter .ring-wrap{width:min(72vw,300px,calc(var(--surface-height,100dvh)*.34))}.routine-counter #cCount{font-size:clamp(2.8rem,13vw,4.8rem)}.routine-counter .c-of{font-size:var(--support-size)}.routine-counter .c-hint{margin:0}

/* Routine composer: keep the reading order separate from choosing new items. */
.routine-form .form-head{margin-bottom:12px}.routine-form .field{margin-bottom:16px}.routine-privacy{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.8rem;margin-bottom:20px}.routine-privacy svg{width:16px;height:16px}.routine-name-field{margin-top:0!important}.routine-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:22px 0 12px;flex-wrap:wrap}.routine-section-heading h3{font-size:1rem;font-weight:800}.routine-section-heading span{font-size:.8rem}
.routine-form .routine-editor-steps{margin:0 0 12px;gap:8px}.routine-form .routine-editor-steps li:not(.routine-empty){padding:8px 12px 12px;border-color:var(--line);background:var(--fill);border-radius:14px}.routine-item-heading{gap:8px}.routine-item-heading b{font-size:.95rem;line-height:1.5}.routine-order-number{width:24px;min-height:24px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--card);color:var(--ink2);font-size:.75rem;font-weight:800}.routine-form .routine-item-controls{display:grid;grid-template-columns:auto minmax(64px,1fr) auto;align-items:center;gap:8px;margin-top:4px}.routine-count-label{font-size:var(--support-size);font-weight:700}.routine-form .routine-row-count{width:100%;padding:8px 10px;min-height:44px;text-align:center;max-width:120px}.routine-reorder{display:flex;gap:0;align-items:center}.routine-reorder .icon{border:1px solid var(--control-line);border-radius:10px;width:44px;height:44px;background:var(--card)}.routine-reorder .icon+.icon{margin-inline-start:6px}.routine-reorder .icon:disabled,.routine-item-heading .icon:disabled{opacity:.45;cursor:default}.routine-form .routine-empty{list-style:none;text-align:center;padding:24px 12px 20px;background:var(--fill);border:1px solid var(--line);border-radius:14px;color:var(--muted);font-size:.9rem}.routine-empty-icon{display:grid;place-items:center;margin-bottom:12px;color:var(--lapis)}.routine-empty-icon svg{width:28px;height:28px}.routine-open-picker{border-style:dashed;background:transparent;min-height:48px}.routine-total{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--support-size);padding:14px 0;flex-wrap:wrap}.routine-total span{color:var(--muted)}.routine-daily{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:12px 0 0;align-items:flex-start}.routine-daily input{margin-top:5px;accent-color:var(--lapis)}.routine-save{margin-top:20px}.routine-save>.btn{min-height:48px}.routine-save>p{margin:12px 0 0;font-size:var(--support-size);line-height:1.6}.routine-delete{display:block;color:var(--danger);margin:12px auto 0}.routine-form .err{margin:14px 0}
.routine-picker-intro{margin-bottom:18px}.routine-picker-back{display:none;align-items:center;gap:4px;margin:-8px 0 12px;font-size:var(--support-size)}.routine-picker-back svg{width:18px;height:18px}.routine-search-input{position:relative}.routine-search-input>svg{position:absolute;inset-inline-start:14px;top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none;color:var(--muted)}.routine-search-input .inp{padding-inline-start:44px}.routine-results{list-style:none;margin:20px 0 0;padding:0;border-top:1px solid var(--line)}.routine-results>li{border-bottom:1px solid var(--line)}.routine-result{width:100%;min-height:64px;padding:12px 4px;border:0;background:transparent;display:flex;align-items:center;gap:12px;text-align:start}.routine-result>span{flex:1;min-width:0}.routine-result b{display:block;font-size:.95rem;overflow-wrap:anywhere}.routine-result small{display:block;font-size:var(--support-size);color:var(--muted);margin-top:3px;overflow-wrap:anywhere}.routine-result>svg{width:22px;height:22px;flex:none;color:var(--lapis)}.routine-results>.chosen{margin:8px 0;border:1px solid var(--lapis);border-radius:14px;padding:0 12px;background:var(--fill)}.routine-count-choice{padding:4px 0 16px}.routine-count-choice .stepper{gap:8px}.routine-count-choice .stepper button{background:var(--card);border:1px solid var(--control-line);border-radius:10px;min-width:44px;min-height:48px}.routine-count-choice .stepper input{text-align:center;flex:1;min-width:0;width:100%}.routine-count-choice #routineCountHelp{margin:10px 0 14px;font-size:.8rem;line-height:1.6}.routine-count-choice #routineAdd{min-height:48px}.routine-no-results{padding:24px 0;color:var(--muted)}
@media(min-width:720px){.routine-picker-back{display:inline-flex}.routine-form .form-head{margin-bottom:12px}}
[dir=rtl] .routine-picker-back svg{transform:scaleX(-1)}
@media(max-width:360px){.routine-form .routine-item-controls{grid-template-columns:minmax(0,1fr) minmax(60px,1fr) auto}.routine-form .routine-row-count{padding-inline:4px}.routine-count-label{overflow-wrap:anywhere}}
.library-create-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:14px 16px 16px}.library-create-actions .btn{flex:1 1 8rem;min-width:0;min-height:48px;border-radius:12px;padding:10px 12px;gap:8px;font-size:.9rem;font-weight:700;background:var(--card);color:var(--ink2);border-color:var(--control-line)}.library-create-actions .btn>span{min-width:0;overflow-wrap:anywhere}.library-create-actions .btn>svg{width:18px;height:18px;flex:none;color:var(--lapis)}
.routine-form .routine-item-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.routine-count-label{flex:0 1 auto}.routine-form .routine-row-count{flex:1 1 4rem;min-width:min(4rem,100%);max-width:8rem;width:auto}.routine-reorder{margin-inline-start:auto}.routine-form .routine-item-heading .icon{margin-inline-end:-4px}

/* Shared action system: compact corners, consistent gutters and clear hierarchy. */
:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--action-radius:12px;--page-gutter:var(--space-4);--flow-gap:var(--space-3);--support-size:.875rem;--meta-size:.75rem}
#main .btn,.flow-form .btn,.auth-content .btn{border-radius:var(--action-radius);min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
#main .btn.sm{padding:9px 14px;font-size:var(--support-size)}.flow-form .btn.primary,.auth-submit .btn{min-height:48px}
#main .vhead{gap:var(--space-2);padding-inline:var(--page-gutter);align-items:center}#main .vhead h1{min-width:0;line-height:1.3;overflow-wrap:anywhere;font-size:1.75rem}
.page-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-3) var(--page-gutter) var(--space-3)}.page-actions .btn{display:flex;align-items:center;gap:8px;flex:1 1 8rem;font-weight:700;background:var(--card);color:var(--ink2);border-color:var(--control-line);min-height:48px;padding:10px 14px}.page-actions svg{width:18px;height:18px;flex:none;color:var(--lapis)}
#main .cloud-actions,#main .cloud-filter-row{gap:var(--space-2);flex-wrap:wrap}#main .cloud-actions>.btn{flex:1 1 8rem;min-width:0;padding:10px 12px;text-align:center;justify-content:center}
#main .cloud-management .cloud-actions>.btn{flex-basis:100%;justify-content:flex-start;text-align:start}#main .cloud-account-status .btn{font-size:.8rem;padding:8px 12px}
#main .cloud-filter-row>.btn{border-radius:12px;flex:1 1 7rem;min-width:0;justify-content:center;font-size:var(--support-size)}
#main .cloud-search{align-items:flex-end;gap:var(--space-2)}#main .cloud-search .field{min-width:0;flex:1}#main .cloud-search>.btn{width:48px;height:48px;flex:none;border-radius:12px}
#main .cloud-surface,#main .cloud-profile-hero,#main .card{border-radius:18px}#main .cloud-profile-hero{overflow:hidden}
#main .cloud-section-head{gap:12px;flex-wrap:wrap}#main .cloud-section-head h2{font-size:1rem;line-height:1.5;min-width:0;overflow-wrap:anywhere}
#main .cloud-account-entry .cloud-eyebrow{display:none}#main .cloud-account-entry h2{font-size:1rem}#main .cloud-account-entry .cloud-actions{margin-top:16px}
#main .zc-foot{padding-top:12px;gap:8px;border-top:1px solid var(--line);margin-top:14px}#main .zc-foot>.badge{font-size:.75rem}#main .zc-foot>.btn{margin-inline-start:0}
#main .plan-foot{gap:12px;flex-wrap:wrap;align-items:center}#main .plan-foot>span{min-width:0;overflow-wrap:anywhere;flex:1 1 8rem}#main .plan-top{align-items:flex-start}#main .pr-info{min-width:0}#main .pr-info h3{font-size:1rem;line-height:1.5;overflow-wrap:anywhere}
#main .settings-profile-actions{gap:16px;display:grid}#main .settings-profile-actions>.danger{border-color:var(--danger);background:transparent}
#main .srow{gap:12px;padding:12px 16px;flex-wrap:wrap}#main .srow>span{min-width:min(8rem,100%);overflow-wrap:anywhere}#main .srow>.seg{flex-wrap:wrap;gap:4px;max-width:100%}
.flow-form .field{margin-block:16px}.flow-form .flabel{line-height:1.5}.flow-form .inp{border-radius:12px;min-height:48px}.flow-form .sh-foot{position:static;margin-top:20px;padding:0;border:0}.flow-form .cloud-actions{flex-wrap:wrap;gap:var(--space-2)}.flow-form .cloud-actions>.btn{min-width:0;flex:1 1 8rem}
#main .btn:focus-visible,.flow-form .btn:focus-visible,.auth-content .btn:focus-visible{outline:3px solid var(--lapis);outline-offset:3px}
@media(max-width:360px){#main .cloud-page{padding-inline:16px}#main .cloud-surface{padding:16px}#main .cloud-profile-metrics span{font-size:.75rem}#main .zc-foot{gap:4px}#main .zc-foot .btn.sm{padding-inline:12px}}

.cloud-copy-help{border-top:1px solid var(--line);margin-block:12px 16px}.cloud-copy-help>summary{min-height:44px;display:flex;align-items:center;list-style:none;font-size:.8rem;color:var(--lapis);font-weight:700;cursor:pointer;gap:8px}.cloud-copy-help>summary::after{content:'+';margin-inline-start:auto}.cloud-copy-help[open]>summary::after{content:'−'}.cloud-copy-help p{margin-block:0 12px}.cloud-zikr-footer{gap:12px;flex-wrap:wrap}.cloud-zikr-footer>.btn{min-height:44px;max-width:100%;padding:10px 14px;font-size:var(--support-size);border-radius:12px}.cloud-zikr-text summary{min-height:44px;padding-block:10px}

/* Keep library previews brief; the details view retains the complete text. */
.zc-main .zc-mean{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}

/* Compact library cards open full details without starting or counting. */
.compact-zcard .zc-main{padding:12px 14px 8px;min-height:64px}
.compact-zcard .zc-heading{display:flex;align-items:center;gap:var(--space-2);min-width:0}
.compact-zcard .zc-name{font-size:1rem;line-height:1.4;margin:0;flex:1;min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.compact-zcard .zc-expand{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;color:var(--lapis);background:var(--lapis-soft)}
.compact-zcard .zc-expand svg{width:18px;height:18px}
.compact-zcard .zc-ar-preview{font-size:1.2rem;line-height:1.65;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compact-zcard .zc-summary{font-size:var(--support-size);color:var(--muted);line-height:1.5;margin:2px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#main .compact-zcard .zc-foot{padding:8px 10px 10px 14px;margin-top:0;gap:4px}
.compact-zcard .zc-foot .btn{padding-inline:12px}
.compact-zcard .zc-foot .badge{white-space:nowrap;padding:4px 8px}
@media(max-width:360px){.compact-zcard .zc-foot .grow{display:none}.compact-zcard .zc-foot .badge{margin-inline-end:auto}.compact-zcard .zc-foot .btn{padding-inline:10px}}

#main .rcard2 .zc-foot{padding:0;margin:0;border:0;gap:8px}

/* Calm layout: shared disclosures, compact actions and bounded reading. */
.ui-disclosure>summary{min-height:44px;display:flex;align-items:center;gap:8px;font-weight:700;font-size:var(--support-size);list-style:none;cursor:pointer;overflow-wrap:anywhere}.ui-disclosure>summary::after{content:'+';margin-inline-start:auto;flex:none}.ui-disclosure[open]>summary::after{content:'−'}.ui-disclosure>summary:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.ui-disclosure>summary::-webkit-details-marker{display:none}
.plan-history{border-top:1px solid var(--line);margin-top:12px}.completed-plans{margin:var(--space-6) var(--page-gutter) 0}.completed-plans .card{margin-inline:0}.completed-plans>summary{padding-inline:0}.completed-plans[open]>summary{margin-bottom:8px}.count-data{max-height:280px;overflow:auto;margin:8px 0 0;padding:0 4px;font-size:var(--support-size)}.count-data>div{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:10px 0}.count-data dt{min-width:0;overflow-wrap:anywhere}.count-data dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}
.settings-advanced>summary{padding:12px 16px;border-top:1px solid var(--line)}.settings-advanced .srow{border-top:1px solid var(--line)}
.library-category{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-top:var(--space-3)}.library-category .flabel{margin:0;flex:0 1 auto}.library-category .inp{flex:1 1 10rem;min-width:0;width:auto;min-height:44px}.library-results{margin-top:var(--space-3)}
.account-shortcut{display:flex;gap:4px;width:auto;min-width:48px;min-height:44px;padding:4px;flex:none;border-radius:12px}.account-shortcut .cloud-avatar{width:32px;height:32px;min-width:32px;font-size:.75rem}.account-menu-chevron{display:flex}.account-menu-chevron svg{width:12px;height:12px;transform:rotate(90deg)}.account-shortcut:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.sky-actions{gap:8px}.c-top .account-shortcut{color:var(--c-ink)}.account-menu-list .btn{width:100%;border:0;background:transparent;justify-content:flex-start;text-align:start;min-height:44px}.account-menu-signout{border-top:1px solid var(--line);padding-top:8px;margin-top:8px}.account-menu-signout .btn{color:var(--danger)}
.compact-shared-card{padding:12px 16px}.compact-shared-card h3{font-size:1rem;line-height:1.4;overflow-wrap:anywhere}.cloud-routine-card{padding:12px 0;border-top:1px solid var(--line)}.cloud-routine-card h3{font-size:1rem;line-height:1.4;overflow-wrap:anywhere;margin:0 0 4px}.cloud-routine-card p{margin:0 0 8px}
.detail-reading.is-long{max-height:calc(var(--surface-height,100dvh)*.4);overflow:auto;overscroll-behavior:contain;padding:8px 12px;border:1px solid var(--control-line);border-radius:12px;scroll-padding:12px}.detail-reading:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}.detail-reading p{overflow-wrap:anywhere}.feature-details>.muted{line-height:1.6}.feature-details>a.link{display:inline-flex;align-items:center;min-height:44px;min-width:44px;line-height:1.5;overflow-wrap:anywhere}
.feature-invitation{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;padding:12px 16px}.feature-invitation h2{flex:1 1 10rem;margin:0;font-size:.95rem}.feature-invitation .cloud-actions{flex:0 1 auto}.feature-invitation .cloud-actions>.btn{flex:0 1 auto!important}.feature-reminder [data-reminder-status]{margin:8px 0}.feature-reminder [data-reminder-preferences]{margin:0 0 12px;font-size:.8rem}.feature-reminder [data-feature=retryStatus]{min-height:44px}

.count-data:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}

/* Shared field feedback and status, used without reserving empty space. */
.field-error{margin-top:var(--space-2);font-size:var(--support-size);line-height:1.5}
.inp[aria-invalid=true],.pchip:has(input[aria-invalid=true]) span{border-color:var(--danger)}
.task-status{padding:var(--space-3);margin-block:var(--space-3);border:1px solid var(--line);background:var(--fill);border-radius:var(--action-radius);font-size:var(--support-size)}
.plan-status{display:block;margin-top:var(--space-1);font-size:var(--support-size);font-weight:500;line-height:1.5}
.progress-legend{color:var(--muted);font-size:var(--meta-size);line-height:1.6;margin-block:var(--space-2)}
.switch:disabled{cursor:default;opacity:.65}

/* Calm shared surfaces: wrap controls before they compete with the content. */
#main :is(.sec,.today-section-heading,.cloud-section-head){flex-wrap:wrap;gap:8px}
#main :is(.sec,.today-section-heading,.cloud-section-head)>h2{min-width:0;overflow-wrap:anywhere}
#main :is(.sec,.today-section-heading,.cloud-section-head)>.link{white-space:normal;max-width:100%;text-align:start}
#main :is(.cloud-filter-row,.cloud-actions,.page-actions,.srow){min-width:0}
#main :is(.cloud-actions,.cloud-filter-row) .btn{white-space:normal;overflow-wrap:anywhere;text-align:center}
#main .cloud-empty{padding:20px 12px;gap:8px}
#main .cloud-empty :is(h3,p){margin:0;line-height:1.5}
#main .cloud-section-head{margin-bottom:12px}
#main .cloud-section-description{margin-bottom:12px}
#main .cloud-list:empty{margin:0}
#main .cloud-challenges-page .cloud-list{margin-block:0}
#main .cloud-challenges-page .cloud-card{margin-block:0}
.cloud-empty-state{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--muted);font-size:.875rem;line-height:1.6}
.sheet-panel :is(.field,.flabel,.cloud-check,.reminder-choice){min-width:0}
.sheet-panel :is(.flabel,.field>p,.cloud-check,.reminder-choice,.auth-link){overflow-wrap:anywhere}
.sheet-panel .form-head h2{line-height:1.3}
.sheet-panel :is(.form-back,.auth-mobile-back){flex:none;min-height:44px;margin:0;max-width:35%;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
.sheet-panel .flow-form .field{margin-bottom:16px}
:is(.form-panel,.auth-panel) :is(.btn,.link,.auth-link){white-space:normal}
#main .library-results{margin-top:8px}
#main .library-bookmarks{margin-bottom:0}
#main .library-create-actions{gap:8px}
.sheet-panel :is(.form-head h2,.auth-header h2){min-width:0;overflow-wrap:anywhere}
#main .cloud-empty h2{font-size:1rem;font-weight:800;margin:0;line-height:1.5;overflow-wrap:anywhere}

.today-completed{margin-top:12px}.today-completed .card{margin-inline:0;margin-block:8px 0}

/* Today: activity first, compact supporting cards, unchanged counting actions. */
.today-page .sky{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 16px;border-radius:0 0 24px 24px}
.today-page .today-date{margin-top:12px;padding-top:12px}
.today-summary.pulse-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 16px;padding:12px 16px;margin-top:12px;border:1px solid var(--line);border-radius:16px}
.today-summary .metric{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;min-width:0}
.today-summary .metric b{font:700 1.25rem/1.2 var(--ui);font-variant-numeric:tabular-nums}
.today-summary .metric span{font-size:.875rem;line-height:1.4;overflow-wrap:anywhere}
.today-summary .week{grid-column:1/-1;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid var(--line)}
.today-summary .wkd{flex-direction:row;gap:5px;font-size:.75rem}.today-summary .wkd i{width:8px;height:8px}
.today-page .resume-card{margin-top:12px;border-radius:16px}.today-page .resume-main{padding:12px 16px;gap:12px}
.today-page .resume-empty .play{width:44px;height:44px}.today-page .today-section{margin-top:20px}
.today-page .today-section-heading{gap:8px;margin-bottom:8px}.today-page .today-section-heading h2{font-size:1rem}
.today-page .today-extra{margin-top:12px}
@media(min-width:480px){.today-summary.pulse-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(120px,1.2fr)}.today-summary .week{grid-column:auto;border:0;padding:0}}

.today-page{gap:12px}.today-page>.card{margin-block:0}.today-page .resume-main{min-height:68px}.today-page .today-section{margin-top:8px}.today-page .today-extra{margin-top:0}.today-page .today-summary .metric span{display:inline;margin:0;font-size:.875rem}.today-page .today-summary .metric b{font-size:1.25rem}.today-page .today-summary .week{gap:8px}.today-page .today-summary .wkd{gap:5px}.today-page .today-summary .wkd i{width:8px;height:8px}

/* Shared headers and compact surfaces use the same page gutters. */
#main .vhead{padding-inline:var(--page-gutter,16px);gap:8px}
.form-head :is(.form-close,.form-back),.auth-header :is(.auth-desktop-close,.auth-mobile-back){align-self:center}
.form-head .form-close,.auth-header .auth-desktop-close{margin:0}
.feature-details .sh-foot{margin-top:16px;padding-top:0;border-top:0}
.feature-details .reading-tools{margin-top:0}
.feature-details>.muted{margin-block:12px}
.practice-text:focus-visible{outline:3px solid var(--lapis);outline-offset:2px}

/* Classic counting surface; full readings use a separate, quiet reading view. */
.counter .c-text{width:100%;max-width:36rem;pointer-events:auto;position:relative;z-index:2;cursor:auto;user-select:text;-webkit-user-select:text}
.counter .c-ar,.counter .c-tr{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;margin:0}
.counter .c-ar{line-height:1.7}.counter .c-tr{margin-top:8px;font-size:1.05rem;line-height:1.5}
.counter .c-text [hidden]{display:none}
.c-reading-disclosure{margin-top:8px;text-align:center}
.c-reading-disclosure>button{min-height:44px;padding:8px 12px;display:flex;justify-content:center;align-items:center;gap:8px;color:#ACCAF5;font-size:1rem;font-weight:600;cursor:pointer;border-radius:999px;border:0;background:transparent;font-family:inherit;margin-inline:auto}
.c-reading-disclosure>button::after{content:'›';font-size:1.4rem}
.c-reading-disclosure>button:focus-visible{outline:3px solid #EDBD60;outline-offset:2px}
.c-step-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.counter .ring-wrap{width:var(--counter-ring-size,min(84vw,360px,calc(var(--surface-height,100dvh) * .43)))}
.counter #cTarget{min-width:44px;justify-content:center}
.counter .routine-counter-status{padding:0;background:transparent;align-self:center}
.counter .routine-counter-status h3{font-size:1.125rem;margin:8px 0 4px}.counter .routine-counter-status p{font-size:.875rem}
.counter .c-foot{border-top:1px solid #435574;background:transparent;padding-top:12px}
.counter .c-foot .pill{border-radius:999px}
.counter-reading-view{min-width:0}
.counter-reading-view .form-head h2{font-size:1.35rem;line-height:1.35;font-family:var(--serif);font-weight:400}
.counter-reader-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:16px}
.counter-pronunciation{display:flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;color:var(--ink2);cursor:pointer;flex:1 1 10rem}
.counter-pronunciation input{width:20px;height:20px;flex:none;accent-color:var(--lapis)}
.counter-reader-controls .reading-tools{margin:0;padding:0;gap:8px}.counter-reader-controls .reading-tools:empty{display:none}
.counter-reader-controls .btn{border:0;background:transparent;color:var(--lapis);padding:8px;font-size:.875rem}
.counter-reader-text{overflow-wrap:anywhere}
.counter-reader-text .feature-ar{font-size:var(--ar-size);line-height:2.05;text-align:right;color:var(--ink);margin:0}
.counter-reader-text .recitation-verse{padding:16px 0;border-bottom:1px solid var(--line);position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:8px;align-items:start}
.counter-reader-text .recitation-verse:first-child{padding-top:0}
.counter-reader-text .recitation-verse .feature-ar{grid-column:2;grid-row:1}
.counter-reader-text .recitation-verse .verse-bookmark{grid-column:1;grid-row:1;margin:0;border:0;background:transparent}
.counter-reader-text .recitation-verse .recitation-transliteration{grid-column:1/-1}
.counter-reader-text .verse-number{color:var(--gold);font-size:.8em}
.counter-reader-text .recitation-basmala{padding:8px 0 16px;text-align:center}
.counter-reader-text .recitation-basmala .feature-ar{text-align:center}
.counter-reader-text .recitation-transliteration{font-size:1rem;line-height:1.75;margin:8px 0 0;color:var(--ink2)}
.counter-reader-text[data-pronunciation=false] :is(.recitation-transliteration,.recitation-basmala p:not(.feature-ar)){display:none}
.counter-reader-meaning{margin-top:16px;border-top:1px solid var(--line);padding-top:8px}
.counter-reader-meaning>summary{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ink2);font-size:1rem;font-weight:600;list-style:none;cursor:pointer}
.counter-reader-meaning>summary::-webkit-details-marker{display:none}.counter-reader-meaning>summary::after{content:'+';font-size:1.25rem}.counter-reader-meaning[open]>summary::after{content:'−'}
.counter-reader-meaning p{font-size:1rem;line-height:1.75;margin:12px 0!important;color:var(--ink2)}
.counter-reader-meaning a{min-height:44px;display:inline-flex;align-items:center;overflow-wrap:anywhere;max-width:100%}
.counter-reader-return{margin-top:24px}
.counter-pronunciation:has(input:focus-visible),.counter-reader-meaning>summary:focus-visible{outline:3px solid var(--lapis);outline-offset:3px;border-radius:8px}
/* All counting controls stay in view; large text can reflow safely. */
.counter{padding:0}
.counter .c-stage{gap:8px;padding:12px 16px}
.counter .c-head{padding-top:4px}
.counter .c-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.counter .c-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}
.counter #cCount{font-size:var(--counter-count-size,clamp(3.6rem,17vw,5.8rem))}
.counter #cOf{max-width:80%;text-align:center;line-height:1.35;font-size:.875rem}
.counter .c-tap{height:100%;min-height:0}
.counter.counter-fitted .c-stage{overflow:hidden;touch-action:manipulation}
.counter.counter-dense .c-stage{gap:4px;padding-block:4px}
.counter.counter-dense .c-ar{-webkit-line-clamp:1;line-height:1.55}
.counter.counter-dense .c-tr{-webkit-line-clamp:1;line-height:1.4;margin-top:4px}
.counter.counter-dense #cHint,.counter.counter-dense:not(.routine-complete) #cRoutineHint{display:none}
.counter .routine-counter-status h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.4}
.counter.counter-dense .routine-counter-status h3{margin:4px 0;font-size:1rem}
.counter.counter-brief .c-tr{display:none}
.counter.counter-minimal .c-ar{display:none}
.counter #cRoutineNext:disabled{display:none}
.counter.counter-dense.routine-complete .c-ar,.counter.counter-dense.routine-complete .c-tr{display:none}
.counter.counter-side .c-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-content:center;justify-items:center;column-gap:16px}
.counter.counter-side .routine-counter-status{grid-column:1;grid-row:1}
.counter.counter-side .c-text{grid-column:1;grid-row:2}
.counter.counter-side .ring-wrap{grid-column:2;grid-row:1 / span 5;margin:0}
.counter.counter-side #cSteps{grid-column:1;grid-row:3}
.counter.counter-side #cAfter{grid-column:1;grid-row:4}
.counter.counter-side #cHint{grid-column:1;grid-row:5}
@media(max-height:430px){.counter.counter-dense .c-sub{display:none}.counter.counter-dense:not(.counter-side) .c-ar,.counter.counter-dense:not(.counter-side) .c-tr{display:none}}


/* Statistics: a seven-day rhythm, real scales and accessible daily values. */
.stats-page{display:grid;gap:12px;padding:8px 16px 0;min-width:0}
.stats-hero{padding:16px;border:1px solid var(--control-line);border-radius:20px;background:linear-gradient(135deg,var(--card),color-mix(in srgb,var(--lapis) 8%,var(--card)));box-shadow:var(--shadow)}
.stats-hero-top>div:first-child{min-width:0;overflow-wrap:anywhere}.stats-hero-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.stats-hero h2{font-family:var(--serif);font-size:1.4rem;font-weight:400;line-height:1.4}.stats-active{font-size:.875rem;color:var(--ink2);margin-top:4px}
.stats-week-ring{width:80px;height:80px;flex:none;position:relative}.stats-week-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.stats-week-ring circle{fill:none;stroke-width:5}.stats-ring-track{stroke:var(--line)}.stats-ring-fill{stroke:var(--turq);stroke-linecap:round}.stats-week-ring>b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:3px;font-size:1.4rem;font-variant-numeric:tabular-nums}.stats-week-ring small{font-size:.75rem;color:var(--ink2);font-weight:500}
.stats-week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:12px}.stats-week-days span{display:grid;justify-items:center;gap:4px}.stats-week-days i{font-style:normal;display:grid;place-items:center;background:var(--fill);border:1px solid var(--line);color:var(--muted);width:26px;height:26px;border-radius:50%;font-size:.875rem}.stats-week-days .active i{background:var(--turq-soft);color:var(--turq);border-color:var(--turq)}.stats-week-days .today i{outline:2px solid var(--amber);outline-offset:3px}.stats-week-days small{font-size:.75rem;color:var(--ink2)}
.stats-streak{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-top:1px solid var(--line);margin-top:12px;padding-top:12px;font-size:.75rem;color:var(--ink2)}.stats-streak b{display:block;font-size:.875rem;color:var(--ink);margin-top:2px}
.stats-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,4.5rem),1fr));background:var(--card);border-radius:16px;padding:12px;gap:8px;border:1px solid var(--line)}.stats-totals>div{min-width:0}.stats-totals>div+div{border-inline-start:1px solid var(--line);padding-inline-start:8px}.stats-totals b{display:block;font-size:1.3rem;font-variant-numeric:tabular-nums;line-height:1.4;overflow-wrap:anywhere}.stats-totals span{overflow-wrap:anywhere;display:block;font-size:.75rem;color:var(--ink2);margin-top:4px}
.stats-panel{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);min-width:0}.stats-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.stats-section-head h2{font-size:1rem;overflow-wrap:anywhere;min-width:0}.stats-section-head>b{font-variant-numeric:tabular-nums;color:var(--turq);font-size:1.125rem}.stats-caption{font-size:.875rem;color:var(--ink2);margin-top:4px}.stats-plot{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin-top:16px}.stats-plot .chart{height:140px;overflow:visible}.stats-axis{display:flex;flex-direction:column;justify-content:space-between;color:var(--ink2);font-size:.75rem;line-height:1;padding-block:8px 0;font-variant-numeric:tabular-nums}.stats-grid-line{stroke:var(--line);stroke-width:1;stroke-dasharray:2 3;fill:none}.stats-date-axis{direction:ltr;display:flex;justify-content:space-between;gap:12px;font-size:.75rem;color:var(--ink2);margin-top:8px}.stats-panel .data-details{margin-top:12px;border-top:1px solid var(--line)}
.stats-ranking{display:flex;gap:12px;align-items:center;padding:12px 0}.stats-ranking:last-child{padding-bottom:0}.stats-rank{width:24px;flex:none;text-align:center;font-size:.875rem;color:var(--ink2)}.stats-ranking-copy{flex:1;min-width:0}.stats-ranking-copy>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:.875rem}.stats-ranking-copy b{font-weight:600;overflow-wrap:anywhere}.stats-ranking-copy span{font-variant-numeric:tabular-nums;color:var(--ink2);flex:none}.stats-ranking-track{height:5px;background:var(--fill);border-radius:4px;margin-top:8px;overflow:hidden}.stats-ranking-track i{display:block;background:var(--turq);height:100%;border-radius:4px}
.stats-history>summary{min-height:44px;font-size:1rem;font-weight:700;cursor:pointer}.stats-history h3{font-size:.875rem;margin:12px 0}.stats-empty{padding:12px;font-size:.875rem;color:var(--ink2);text-align:center}.stats-empty .btn{margin-top:12px}.stats-page .progress-legend{margin-top:12px}
@media(min-width:520px){.stats-page{grid-template-columns:repeat(2,minmax(0,1fr))}.stats-hero,.stats-totals,.stats-history,.stats-empty{grid-column:1/-1}.stats-week-days{max-width:400px;margin-inline:auto}}
@media(prefers-reduced-motion:no-preference){.stats-panel{transition:background-color .15s ease}.stats-ring-fill{transition:stroke-dasharray .3s ease}}

/* Completion copy lives outside the beads, in normal flow, in every counter. */
.counter .c-completion-copy{display:none;position:relative;z-index:2;width:100%;max-width:32rem;min-width:0;text-align:center;flex-direction:column;align-items:center;gap:6px;pointer-events:none}
.counter:has(#cDone:not([hidden])) .c-completion-copy{display:flex}
.counter .c-completion-copy b{font-family:var(--serif);font-weight:400;font-size:1.25rem;line-height:1.35;color:var(--gold);max-width:100%;overflow-wrap:anywhere;text-wrap:balance}
.counter .c-completion-copy span{font-size:.875rem;line-height:1.5;color:#C9D5EC;max-width:100%;overflow-wrap:anywhere;text-wrap:balance}
.counter .c-done{gap:0}
.counter .c-done svg{width:clamp(32px,25%,56px);height:auto;aspect-ratio:1}
.counter:has(#cDone:not([hidden])) .ring-wrap{margin-block:0}
.counter:has(#cDone:not([hidden])) .c-after{margin-top:4px}
.counter.counter-side .c-completion-copy{grid-column:1;grid-row:3}
.counter.counter-side:has(#cDone:not([hidden])) #cSteps{display:none}
/* In short landscape completion views the full reading remains one tap away. */
.counter.counter-side:has(#cDone:not([hidden])) .c-ar,.counter.counter-side:has(#cDone:not([hidden])) .c-tr{display:none}
.counter.counter-side:has(#cDone:not([hidden])) .c-after{width:100%;gap:8px}
.counter.counter-side:has(#cDone:not([hidden])) .c-after .btn{flex:1 1 0;min-width:0;padding-inline:8px;font-size:.875rem}
