.recitation-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:5px 10px;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--green);font-size:11px;white-space:nowrap}
.recitation-toggle .icon{width:16px;height:16px;color:var(--gold)}
#recitationMount{min-width:0;--quran-size:30px}
/* The reading canvas keeps the original Warsh words and their geometry. */
.recitation-reader{--rec-bg:#171815;--rec-chrome:#1F1F1F;--rec-ink:#F5F5EF;--rec-muted:#C8C8C5;--rec-line:#444541;--rec-rule:#FFFFFF0B;--rec-button:#2C2C2C;--rec-accent:#C6CE9C;--rec-hint:#E0D871;--rec-error:#EF9785;--rec-heard:#65CEA0}
.recitation-reader[data-recitation-theme="light"]{--rec-bg:#F7F3E8;--rec-chrome:#EEE9DD;--rec-ink:#203A32;--rec-muted:#53665B;--rec-line:#C6BFAE;--rec-rule:#123F3510;--rec-button:#E3DED1;--rec-accent:#6E7137;--rec-hint:#75520E;--rec-error:#98452F;--rec-heard:#2C6E53}
.reader-dialog.recitation-reader[open]{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;min-height:0;border:0;border-radius:0;display:flex;flex-direction:column;overflow:hidden;background:var(--rec-bg);color:var(--rec-ink)}
.recitation-reader #readerContent{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}
.recitation-reader .reader-toolbar,.recitation-reader .reader-reference,.recitation-reader .reader-source,.recitation-reader .reader-bottom{display:none}
.recitation-reader #recitationMount{display:flex;flex:1;min-height:0;color:var(--rec-ink)}
.recitation-reader .recitation-panel{position:relative;isolation:isolate;display:flex;flex-direction:column;flex:1;width:100%;min-width:0;min-height:0;margin:0;border:0;border-radius:0;padding:0;background:var(--rec-bg)}
.recitation-header{display:grid;grid-template-columns:34px minmax(0,1fr)32px 32px 32px;align-items:center;gap:12px;flex:0 0 auto;min-height:54px;padding:4px max(12px,env(safe-area-inset-right)) 4px max(12px,env(safe-area-inset-left));background:var(--rec-chrome);border-bottom:1px solid #FFFFFF0A;color:var(--rec-ink)}
.recitation-header-button{display:grid;place-items:center;border:0;border-radius:0;background:none;color:var(--rec-ink);width:100%;height:42px;padding:1px;min-width:0;text-decoration:none}
.recitation-header-button .icon{width:28px;height:28px;stroke-width:1.7}
.recitation-header-button:first-child .icon{width:29px;height:29px}
.recitation-gift .icon{width:27px;height:27px}
.recitation-title-card{display:flex;align-items:center;min-width:0;gap:5px;min-height:46px;padding:3px 7px;background:#FFFFFF12;border:1px solid #646560;border-radius:5px;text-align:right}
.recitation-title-card>div{flex:1;min-width:0;order:1}
.recitation-title-card h2{font:700 16px/1.35 var(--serif);color:var(--rec-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.recitation-title-card p{font:11px/1.55 var(--serif);color:var(--rec-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
#recitationSave{flex:0 0 27px;display:grid;place-items:center;border:0;background:none;color:#FFFFFF24;width:27px;height:35px;padding:0}
#recitationSave .icon{width:24px;height:27px}
#recitationSave[aria-pressed="true"]{color:#C7D4A8}
.recitation-position,.recitation-feedback{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0!important}
.recitation-page-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;width:100%;max-width:1000px;margin-inline:auto;scrollbar-width:none;outline-offset:-3px}
.recitation-page-scroll::-webkit-scrollbar{display:none}
.recitation-page{--rec-type:calc(var(--quran-size,30px)*.84);font:var(--rec-type)/1.86 Warsh,var(--serif);color:var(--rec-ink);text-align:justify;direction:rtl;overflow-wrap:break-word;word-spacing:0;padding:5px 8px 20px;min-height:100%;border-inline-start:double 4px #94968F;}
.recitation-page.is-masked{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--rec-type)*1.86 - 1px),var(--rec-rule) calc(var(--rec-type)*1.86 - 1px),var(--rec-rule) calc(var(--rec-type)*1.86));background-position:0 5px}
.recitation-page .surah-banderole{max-width:340px;margin:5px auto 13px;background:transparent;color:var(--rec-ink);border-color:var(--rec-line);font:25px/1.65 var(--serif)}
.recitation-page .basmala{text-align:center;font:var(--rec-type)/1.86 Warsh,var(--serif);margin:4px 0 10px}
.recitation-page .reader-note{display:block;font:11px/1.8 var(--font);color:var(--rec-muted);margin:6px 0}
.recitation-page.is-masked .basmala{visibility:hidden}
.recitation-word{color:var(--rec-ink);border-radius:12px;-webkit-text-stroke:.12px currentColor;transition:color .12s,background .12s}
.is-listening .recitation-word{transition:none}
.recitation-page.is-masked .verse:not(.is-matched){color:transparent}
.recitation-division-marker{display:inline-block;color:var(--rec-ink);font-family:var(--serif);font-size:.8em;line-height:1;vertical-align:middle;margin-inline:.08em;white-space:nowrap;user-select:none;-webkit-text-stroke:0}
.recitation-word.is-concealed{color:transparent!important;text-shadow:none!important;user-select:none;-webkit-user-select:none}
.recitation-word.is-concealed::selection{color:transparent;background:transparent}
.recitation-word.is-marked{background:#D2C51C30;box-shadow:0 0 10px 5px #AFB21838}
.recitation-word.is-cursor{background:#CBD90E18;box-shadow:0 0 10px 5px #CBD90E12}
.recitation-word.is-hint{color:var(--rec-hint);text-decoration:underline;text-decoration-color:var(--rec-accent);text-underline-offset:.18em}
.recitation-word.is-error.is-cursor{background:#D33B2A3D;box-shadow:0 0 12px 6px #D33B2A28}
.recitation-word.is-error{background:#F14C4333;box-shadow:0 0 0 1px #FF88794D;text-decoration:none!important}
.recitation-word.is-error:not(.is-concealed){color:var(--rec-error)!important}
.recitation-word.is-uncertain{background:#E8BD323B!important;box-shadow:0 0 0 1px #E8BD3270!important;text-decoration:none!important}
.recitation-word.is-uncertain:not(.is-concealed){color:#F3D76F!important}
[data-recitation-theme="light"] .recitation-word.is-uncertain:not(.is-concealed){color:#765300!important}
.recitation-legend{display:inline-flex;gap:12px;flex-wrap:wrap}
.recitation-legend .legend-red{color:var(--rec-error)}
.recitation-legend .legend-yellow{color:#F3D76F}
[data-recitation-theme="light"] .recitation-legend .legend-yellow{color:#765300}
.recitation-word.is-heard:not(.is-concealed){color:var(--rec-heard)}
.recitation-word.is-verified:not(.is-concealed):not(.is-error):not(.is-uncertain){color:var(--rec-heard);background:#38A66B12}
.recitation-page .verse.is-repeated .recitation-word:not(.is-concealed):not(.is-error):not(.is-uncertain){color:#86EFAC;background:#36CC7A1A;text-decoration:none}
.recitation-page .verse.is-repeated .recitation-word.is-repeat-cursor:not(.is-concealed):not(.is-error):not(.is-uncertain){background:#36CC7A36;box-shadow:0 0 0 1px #72E49D50}
[data-recitation-theme="light"] .recitation-page .verse.is-repeated .recitation-word:not(.is-concealed):not(.is-error):not(.is-uncertain){color:#17603B;background:#1B8D5012}
.recitation-legend .legend-green{color:#86EFAC}
[data-recitation-theme="light"] .recitation-legend .legend-green{color:#17603B}
.recitation-word.is-unverified:not(.is-error):not(.is-uncertain):not(.is-hint){background:#B28A461C;color:#DED4AF;text-decoration:none!important;box-shadow:none}
[data-recitation-theme="light"] .recitation-word.is-unverified:not(.is-error):not(.is-uncertain):not(.is-hint){color:#6F5C2E;background:#B28A461C}
.recitation-legend .legend-unverified{color:#DED4AF}
.recitation-response{border:1px solid var(--rec-line);border-radius:9px;padding:8px 10px;margin:10px 0;font:11px/1.9 var(--font)}
.recitation-response summary{cursor:pointer;color:var(--rec-ink)}
.recitation-response p{margin:8px 0;color:var(--rec-muted)}
.recitation-diagnostic-report{width:100%;max-width:100%;min-height:150px;padding:9px;border:1px solid var(--rec-line);border-radius:6px;background:var(--rec-bg);color:var(--rec-ink);font:11px/1.6 monospace;resize:vertical}
.recitation-diagnostic-report[hidden]{display:none}
.recitation-connection{display:flex;align-items:center;gap:9px;flex:0 0 auto;min-width:0;padding:7px max(12px,env(safe-area-inset-right)) 7px max(12px,env(safe-area-inset-left));border-top:1px solid var(--rec-line);background:var(--rec-chrome);font:11px/1.6 var(--font)}
.recitation-connection-dot{flex:0 0 8px;height:8px;border-radius:50%;background:var(--rec-muted);opacity:.65}
.recitation-connection-copy{flex:1;min-width:0;overflow-wrap:anywhere}
.recitation-connection-copy>span,.recitation-connection-copy>small{display:block}
.recitation-connection-copy>span{color:var(--rec-ink);font-weight:600}
.recitation-connection-copy>small{color:var(--rec-muted);font-size:10px}
.recitation-connection[data-state="receiving"] .recitation-connection-dot,.recitation-connection[data-state="hearing"] .recitation-connection-dot{background:var(--rec-heard);opacity:1}
.recitation-connection[data-state="delayed"] .recitation-connection-dot,.recitation-connection[data-state="reconnecting"] .recitation-connection-dot,.recitation-connection[data-state="offline"] .recitation-connection-dot{background:var(--rec-hint);opacity:1}
.recitation-connection[data-state="error"] .recitation-connection-dot{background:var(--rec-error);opacity:1}
.recitation-connection .recitation-secondary{flex:0 0 auto;min-height:35px;padding:4px 8px;font-size:11px;white-space:nowrap}
.recitation-connection [hidden]{display:none}
.recitation-audio-options{margin:10px 0;border:1px solid var(--rec-line);border-radius:7px;padding:8px;font:11px/1.8 var(--font)}
.recitation-audio-options summary{cursor:pointer}
.recitation-audio-options .recitation-connection{padding:9px 0 0;border:0;background:none}
.recitation-settings .recitation-scope-bar{padding:8px 0;gap:8px;border:0;background:none}
.recitation-scope-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:5px 12px;background:var(--rec-chrome);color:var(--rec-muted);border-bottom:1px solid var(--rec-line);font:10px/1.65 var(--font)}
.recitation-scope-bar label{display:flex;align-items:center;gap:6px;flex:0 0 auto;color:var(--rec-ink)}
.recitation-scope-bar select,.recitation-engine-options select{max-width:100%;padding:5px;border:1px solid var(--rec-line);border-radius:5px;background:var(--rec-button);color:var(--rec-ink);font:11px var(--font)}
#recitationScopeNote{flex:1 1 150px;min-width:0}
.recitation-scope-bar [hidden]{display:none}
.recitation-candidate{padding:9px 0;border-bottom:1px solid var(--rec-line)}
.recitation-candidate button{width:100%;padding:7px;border:1px solid var(--rec-line);border-radius:6px;background:var(--rec-button);color:var(--rec-ink);font:12px var(--font);text-align:start}
.recitation-candidate p{margin:6px 0;color:var(--rec-muted);font:16px/1.9 Warsh,var(--serif);overflow-wrap:anywhere}
.recitation-engine-options{margin:8px 0;padding:8px;border:1px solid var(--rec-line);border-radius:7px;font:11px/1.9 var(--font)}
.recitation-engine-options summary{cursor:pointer;color:var(--rec-ink)}
.recitation-engine-options label{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:10px 0}
.recitation-engine-options input[type="url"],.recitation-engine-options input[type="password"]{width:100%;min-width:0;padding:8px;background:var(--rec-bg);color:var(--rec-ink);border:1px solid var(--rec-line);border-radius:5px;font:11px var(--font)}
.recitation-engine-options input[type="checkbox"],.recitation-detailed-opt input{flex:0 0 auto;accent-color:var(--rec-accent)}
.recitation-engine-options p{color:var(--rec-muted);overflow-wrap:anywhere}
.recitation-engine-options [hidden]{display:none}
.recitation-detailed-opt{display:flex;gap:7px;align-items:flex-start;color:var(--rec-ink)}
#recitationLevel{display:block;width:100%;height:8px;margin-top:3px;accent-color:var(--rec-heard)}
#recitationLevel[hidden]{display:none}
#recitationHeardText{color:var(--rec-ink);padding:6px 9px;border-inline-start:2px solid var(--rec-accent);overflow-wrap:anywhere}
[data-recitation-theme="light"] .recitation-legend .legend-unverified{color:#6F5C2E}
.recitation-page.is-marking .recitation-word{cursor:crosshair}
.recitation-page .verse-number{position:relative;display:inline-grid;place-items:center;vertical-align:middle;font:10px/1 var(--font);width:25px;height:27px;margin-inline:1px;color:var(--rec-ink);border:0;border-radius:0;white-space:nowrap}
.recitation-page .verse-number:before{content:none}
.recitation-page .verse-number>.icon{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:currentColor}
.recitation-page .verse-number bdi{position:relative;z-index:1;font-size:9px;letter-spacing:-.5px;padding-top:2px}
.recitation-page.hide-verse-numbers .verse-number{visibility:hidden}
.recitation-dock{--tool:clamp(32px,10vw,40px);--mic:clamp(68px,20.2vw,80px);display:grid;grid-template-columns:minmax(0,1fr) var(--mic);align-items:center;gap:12px;flex:0 0 auto;width:100%;padding:4px max(17px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(17px,env(safe-area-inset-left));background:var(--rec-chrome);border-top:1px solid #FFFFFF08;color:var(--rec-ink)}
.recitation-dock-left{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-width:0;max-width:510px}
.recitation-counters{display:flex;gap:8px;align-items:center;height:26px;max-width:100%}
.recitation-counters button{display:flex;align-items:center;justify-content:center;gap:5px;height:26px;min-width:44px;border:0;border-radius:18px;padding:2px 9px;background:var(--rec-button);color:var(--rec-ink);font:12px/1.3 var(--serif);white-space:nowrap;box-shadow:0 2px 4px #0003}
.recitation-counters .icon{width:20px;height:20px}
.recitation-timer{display:inline-flex;align-items:center;gap:8px;height:26px;padding:2px 9px;border-radius:18px;background:var(--rec-button);color:var(--rec-ink);font:12px/1.3 var(--font);white-space:nowrap;box-shadow:0 2px 4px #0003}
.recitation-timer[hidden]{display:none}
.recitation-timer-dot{width:10px;height:10px;flex:0 0 10px;border-radius:50%;background:#D15F80;opacity:.5}
.is-listening .recitation-timer-dot{opacity:1;animation:recitation-timer-pulse 1.6s ease-in-out infinite}
@keyframes recitation-timer-pulse{50%{opacity:.5}}
#recitationHintCount{font-size:10px}
#recitationSummary{gap:5px;padding-inline:9px}
#recitationSummary>span{opacity:.4}
#recitationProgress{direction:rtl}
.recitation-mic{display:grid;place-items:center;width:var(--mic);height:var(--mic);padding:0;border-radius:50%;color:#FFFED1;background:radial-gradient(ellipse at 68% 62%,#A4DA46 0,#87D953 28%,#56D698 68%,#48C8B7 100%);box-shadow:inset 0 0 0 3px #68E1A190,0 0 18px 5px #58DF9C54,0 0 38px 3px #2BBB9330;border:1px solid #80DC9C;transition:box-shadow .15s}
.recitation-mic .icon{width:40px;height:40px;stroke-width:2.1}
.is-listening .recitation-mic{box-shadow:inset 0 0 0 3px #A2F5B390,0 0 20px 7px #58DF9C70,0 0 42px 5px #2BBB9350}
.recitation-mic:disabled{opacity:.4;cursor:default}
.recitation-mic-wrap{position:relative;width:var(--mic);height:var(--mic);align-self:center}
.recitation-audio-status{position:absolute;bottom:-3px;inset-inline:0;display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:22px;padding:2px 4px;border:1px solid var(--rec-line);border-radius:12px;background:var(--rec-chrome);color:var(--rec-muted);font:9px/1.4 var(--font);box-shadow:0 2px 5px #0003;direction:rtl}
.recitation-audio-status>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.recitation-audio-status .recitation-connection-dot{flex-basis:5px;height:5px}
.recitation-audio-status[data-state="receiving"],.recitation-audio-status[data-state="hearing"]{color:var(--rec-heard)}
.recitation-audio-status[data-state="receiving"] .recitation-connection-dot,.recitation-audio-status[data-state="hearing"] .recitation-connection-dot{background:var(--rec-heard);opacity:1}
.recitation-audio-status[data-state="delayed"],.recitation-audio-status[data-state="offline"],.recitation-audio-status[data-state="reconnecting"]{color:var(--rec-hint)}
.recitation-audio-status[data-state="error"]{color:var(--rec-error)}
.recitation-dock-actions{display:flex;align-items:center;justify-content:flex-start;gap:8px;min-width:0;width:100%;height:var(--tool)}
.recitation-tool{display:grid;place-items:center;flex:0 0 var(--tool);width:var(--tool);height:var(--tool);min-width:0;min-height:0;background:var(--rec-button);color:var(--rec-ink);border:0;border-radius:50%;padding:8px;box-shadow:0 3px 7px #0004}
.recitation-tool .icon{width:100%;height:100%;stroke-width:1.7}
.recitation-tool[aria-pressed="true"],.recitation-tool.is-selected{box-shadow:0 3px 7px #0004,0 4px 7px #62E3AE20}
.recitation-tool:disabled{opacity:.35;cursor:default}
.recitation-hints{display:flex;align-items:center;gap:0;margin-inline:-4px}
.recitation-hints[hidden]{display:none}
.recitation-hint{flex-basis:calc(var(--tool) - 2px);width:calc(var(--tool) - 2px);height:calc(var(--tool) - 2px);border:1px solid #838580;background:transparent;box-shadow:none;padding:8px}
.recitation-reader button:focus-visible,.recitation-reader a:focus-visible,.recitation-reader select:focus-visible,.recitation-reader input:focus-visible,.recitation-word:focus-visible{outline:2px solid var(--rec-accent);outline-offset:2px}
.recitation-popover{position:absolute;inset-inline:12px;top:61px;z-index:4;max-height:calc(100% - 160px);overflow:auto;padding:15px;background:var(--rec-chrome);color:var(--rec-ink);border:1px solid var(--rec-line);border-radius:8px;box-shadow:0 12px 32px #0007;direction:rtl;font:12px/1.9 var(--font)}
.recitation-popover[hidden]{display:none}
.recitation-menu{inset-inline-end:auto;width:min(285px,calc(100% - 24px))}
.recitation-menu>a,.recitation-menu>button{display:block;text-align:right;width:100%;padding:8px 4px;background:none;border:0;border-bottom:1px solid #FFFFFF0B;color:var(--rec-ink);text-decoration:none;font-size:12px}
.recitation-settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}
.recitation-popover .icon-button{border:0;border-radius:50%;width:30px;height:30px;min-width:30px;min-height:30px;padding:7px;background:var(--rec-button);color:var(--rec-ink)}
.recitation-disclosure{font-size:11px;line-height:1.9;color:var(--rec-muted);margin:10px 0}
.recitation-settings-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:10px 0;font-size:11px}
.recitation-settings-row label{display:inline-flex;align-items:center;gap:7px;min-height:36px}
.recitation-settings-row input{accent-color:var(--rec-accent);width:16px;height:16px}
.recitation-settings-row select{background:var(--rec-button);color:var(--rec-ink);border:1px solid var(--rec-line);border-radius:6px;padding:6px;font-size:11px}
.recitation-secondary{background:var(--rec-button);color:var(--rec-ink);border:1px solid var(--rec-line);border-radius:7px;padding:8px 12px;font-size:11px;min-height:38px}
.recitation-secondary:disabled{opacity:.4}
.recitation-settings-actions{display:flex;gap:8px;flex-wrap:wrap}
.recitation-settings-actions>button{flex:1 1 160px}
.recitation-search input{width:100%;margin:12px 0;padding:10px 12px;background:var(--rec-bg);color:var(--rec-ink);border:1px solid var(--rec-line);border-radius:6px;font:12px/1.8 var(--font)}
#recitationSearchResults>button{display:block;width:100%;text-align:right;border:0;border-bottom:1px solid var(--rec-line);background:transparent;color:var(--rec-ink);padding:10px 0;font-size:12px}
.recitation-notice{position:absolute;z-index:3;bottom:170px;inset-inline:14px;max-width:540px;margin:auto;padding:10px 13px;border:1px solid var(--rec-line);border-radius:8px;background:var(--rec-chrome);color:var(--rec-ink);font:11px/1.9 var(--font);box-shadow:0 4px 20px #0005}
.recitation-notice[hidden]{display:none}
@media(min-width:700px){
 .recitation-header{grid-template-columns:38px minmax(0,350px)36px 36px 36px;justify-content:center;gap:20px}
 .recitation-dock{padding-inline:max(24px,calc((100% - 610px)/2));--tool:44px;--mic:82px;gap:24px}
 .recitation-page{--rec-type:var(--quran-size,30px);padding-inline:18px}
}
@media(max-width:370px){
 .recitation-header{grid-template-columns:28px minmax(0,1fr)27px 27px 27px;gap:8px;padding-inline:9px}
 .recitation-header-button .icon{width:25px;height:25px}
 .recitation-title-card{padding-inline:5px}
 .recitation-title-card h2{font-size:15px}
 .recitation-title-card p{font-size:10px}
 #recitationSave{flex-basis:22px;width:22px}
 #recitationSave .icon{width:21px}
 .recitation-dock{gap:9px;padding-inline:12px}
 .recitation-dock-actions{gap:5px}
 .recitation-tool{padding:7px}
 .recitation-hint{padding:7px}
 .recitation-counters{gap:6px}
 .recitation-timer{gap:6px;padding-inline:7px;font-size:11px}
}
@media(max-height:500px){
 .recitation-header{min-height:46px;padding-block:2px}
 .recitation-title-card{min-height:40px}
 .recitation-header-button{height:36px}
 .recitation-dock{--mic:52px;--tool:33px;padding-block:4px;gap:15px}
 .recitation-dock-left{flex-direction:row;align-items:center;gap:12px;max-width:600px}
 .recitation-counters{flex:0 0 auto;height:24px}
 .recitation-counters button{height:24px;font-size:11px}
 .recitation-dock-actions{width:auto}
 .recitation-mic .icon{width:30px;height:30px}
 .recitation-popover{top:49px;max-height:calc(100% - 115px)}
 .recitation-notice{bottom:128px}
}
@media(max-width:540px) and (max-height:500px){.recitation-dock-left{flex-direction:column;gap:5px}}
@media(prefers-reduced-motion:reduce){.recitation-word,.recitation-mic{transition:none}.recitation-timer-dot{animation:none!important}}
