:root{
  color-scheme:light;
  --bg:#f6f2ea;
  --surface:#fffdf8;
  --surface-soft:#efeae0;
  --surface-strong:#e6dfd3;
  --text:#1e2823;
  --muted:#66716b;
  --line:#d9d2c6;
  --brand:#256859;
  --brand-strong:#174d42;
  --brand-soft:#dfede7;
  --accent:#8b6a32;
  --success:#2a6f5e;
  --warning:#80601e;
  --danger:#934343;
  --focus:#1769aa;
  --shadow-sm:0 8px 24px rgba(44,38,27,.08);
  --shadow-lg:0 24px 64px rgba(44,38,27,.16);
  --radius-sm:12px;
  --radius-md:18px;
  --radius-lg:28px;
  --space-1:.25rem;
  --space-2:.5rem;
  --space-3:.75rem;
  --space-4:1rem;
  --space-5:1.25rem;
  --space-6:1.5rem;
  --space-8:2rem;
  --nav-h:72px;
  --header-h:72px;
  --player-h:72px;
  --safe-top:env(safe-area-inset-top,0px);
  --safe-right:env(safe-area-inset-right,0px);
  --safe-bottom:env(safe-area-inset-bottom,0px);
  --safe-left:env(safe-area-inset-left,0px);
  --ease:cubic-bezier(.2,.8,.2,1);
  --content-max:1120px;
  font-family:"Noto Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;
}

html.dark{
  color-scheme:dark;
  --bg:#0e1512;
  --surface:#151f1b;
  --surface-soft:#1c2823;
  --surface-strong:#24342d;
  --text:#e8eee9;
  --muted:#a1afa7;
  --line:#304139;
  --brand:#71b6a3;
  --brand-strong:#90c9b8;
  --brand-soft:#203b33;
  --accent:#c5a56a;
  --success:#79c6ae;
  --warning:#d7bd7b;
  --danger:#e58f8f;
  --focus:#78b7e8;
  --shadow-sm:0 10px 26px rgba(0,0,0,.22);
  --shadow-lg:0 28px 76px rgba(0,0,0,.42);
}

*{box-sizing:border-box}
html{min-width:0;overflow-x:hidden;scroll-behavior:smooth;background:var(--bg)}
html.modal-open{overflow:hidden}
body{margin:0;min-width:0;min-height:100dvh;background:var(--bg);color:var(--text);line-height:1.65;overflow-x:hidden}
button,input,select{font:inherit;color:inherit}
button{min-width:44px;min-height:44px;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
button:disabled{cursor:not-allowed;opacity:.55}
button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 75%,transparent);outline-offset:3px}
img{max-width:100%;display:block}
[hidden]{display:none!important}
h1,h2,h3,p{overflow-wrap:anywhere}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:200;inset-inline-start:1rem;top:-5rem;padding:.7rem 1rem;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);text-decoration:none}.skip-link:focus{top:calc(1rem + var(--safe-top))}

/* Splash */
.splash{position:fixed;inset:0;z-index:180;display:grid;place-items:center;padding:calc(1.25rem + var(--safe-top)) max(1rem,var(--safe-right)) calc(1.25rem + var(--safe-bottom)) max(1rem,var(--safe-left));background:var(--bg);transition:opacity .35s var(--ease),visibility .35s var(--ease)}
.splash.is-done{opacity:0;visibility:hidden;pointer-events:none}
.splash-card{width:min(92vw,410px);display:grid;justify-items:center;text-align:center;padding:2rem 1.5rem;border:1px solid var(--line);border-radius:34px;background:var(--surface);box-shadow:var(--shadow-lg)}
.splash-card img{width:min(42vw,164px);aspect-ratio:1;border-radius:32px;box-shadow:var(--shadow-sm)}
.eyebrow{margin:.8rem 0 0;color:var(--brand);font-size:.76rem;font-weight:800;letter-spacing:.08em}
.splash-card h1{margin:.25rem 0 .1rem;font-size:2rem;line-height:1.25}.splash-card h1 span{display:block;font-family:"Noto Naskh Arabic",serif;font-size:1.2rem;font-weight:600;color:var(--muted)}
.splash-card>p:not(.eyebrow){margin:0;color:var(--muted)}
.splash-card>small{color:var(--muted);font-family:"Noto Naskh Arabic",serif}
.splash-progress{width:100%;height:7px;margin:1.4rem 0 .8rem;overflow:hidden;border-radius:999px;background:var(--surface-strong)}
.splash-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:var(--brand);transform-origin:right;animation:splashProgress 1.1s var(--ease) both}
@keyframes splashProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* Header and page shell */
.app-header{position:sticky;top:0;z-index:40;min-height:calc(var(--header-h) + var(--safe-top));display:flex;align-items:flex-end;justify-content:space-between;gap:.5rem;padding:calc(.55rem + var(--safe-top)) max(.75rem,var(--safe-right)) .55rem max(.75rem,var(--safe-left));border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(16px)}
.brand-button{display:flex;align-items:center;gap:.65rem;padding:.2rem;border:0;background:transparent;text-align:right}.brand-button img{width:46px;height:46px;border-radius:14px}.brand-button span{display:grid;line-height:1.3}.brand-button small{color:var(--muted);font-size:.7rem}.brand-button b{font-size:1rem}
.header-actions{display:flex;gap:.25rem}.icon-button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--text);font-size:1.2rem}.icon-button:hover{background:var(--brand-soft)}
main{width:min(var(--content-max),100%);margin-inline:auto;padding:1.1rem max(.8rem,var(--safe-right)) calc(var(--nav-h) + var(--player-h) + 2.2rem + var(--safe-bottom)) max(.8rem,var(--safe-left))}
.page{min-width:0;animation:pageIn .18s var(--ease)}
@keyframes pageIn{from{opacity:.35;transform:translateY(5px)}}
.welcome-block{padding:.7rem 0 1rem}.welcome-block .eyebrow{margin:0}.welcome-block h1{margin:.1rem 0;font-size:clamp(1.75rem,5vw,3rem);line-height:1.35}.welcome-block>p:last-child{max-width:720px;margin:.4rem 0;color:var(--muted)}
.section-label{margin:1.5rem 0 .8rem;font-size:1.1rem}
.section-header{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem}.section-header>button{flex:0 0 44px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.section-header>div{min-width:0;flex:1}.section-header h1{margin:0;line-height:1.35}.section-header small{color:var(--muted)}

/* Core components */
.card,.text-list article,.feature-grid button,.surah-list button{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm)}
.primary-button,.secondary-button,.text-button,.danger-button,.retry-button{border-radius:14px;padding:.65rem .9rem;font-weight:750}
.primary-button{border:1px solid var(--brand);background:var(--brand);color:#fff}
html.dark .primary-button{color:#0d1713}
.secondary-button{border:1px solid var(--line);background:var(--surface);color:var(--text)}
.text-button{border:0;background:transparent;color:var(--brand)}
.danger-button{border:1px solid color-mix(in srgb,var(--danger) 55%,var(--line));background:color-mix(in srgb,var(--danger) 11%,var(--surface));color:var(--danger)}
.retry-button{width:100%;border:1px solid color-mix(in srgb,var(--warning) 50%,var(--line));background:color-mix(in srgb,var(--warning) 12%,var(--surface));color:var(--warning)}
.danger-text{color:var(--danger)}
.notice{padding:.9rem 1rem;border:1px solid color-mix(in srgb,var(--warning) 34%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--warning) 7%,var(--surface));color:var(--text)}
.field{display:grid;gap:.35rem;min-width:0}.field>span{color:var(--muted);font-size:.78rem;font-weight:700}.field input,.field select{width:100%;min-height:46px;padding:.65rem .75rem;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--text)}
.field.compact{grid-template-columns:auto minmax(88px,1fr);align-items:center}.field.compact>span{font-size:.8rem}

/* Home */
.search-launch{width:100%;display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:.7rem;padding:.75rem .85rem;border:1px solid color-mix(in srgb,var(--brand) 28%,var(--line));border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);text-align:right}.search-launch .search-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:var(--brand-soft);color:var(--brand);font-size:1.4rem}.search-launch>span:nth-child(2){display:grid;min-width:0}.search-launch small{color:var(--muted)}
.install-card{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:1rem;margin-top:1rem;padding:1rem;border:1px solid color-mix(in srgb,var(--brand) 36%,var(--line));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--brand) 6%,var(--surface));box-shadow:var(--shadow-sm)}.install-card>img{width:64px;height:64px;border-radius:18px}.install-card h2,.install-card p{margin:.05rem 0}.install-card p,.install-card small{color:var(--muted)}.install-actions{display:flex;gap:.35rem;align-items:center}
.home-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:.9rem;margin-top:1rem}.home-grid .card{padding:1.1rem}.prayer-summary{background:var(--brand-strong);color:#f6fbf8;border-color:transparent;box-shadow:var(--shadow-lg)}.prayer-summary p{color:#d6e7e1}.prayer-summary .secondary-button{border-color:#ffffff42;background:#ffffff12;color:#fff}.continue-card{display:grid;align-content:start;gap:.65rem;text-align:right;color:var(--text)}.continue-card small{color:var(--muted)}.continue-card span{margin-top:auto;color:var(--brand);font-weight:700}
.feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.feature-grid button{min-height:122px;display:grid;align-content:start;gap:.25rem;padding:1rem;text-align:right;color:var(--text)}.feature-grid button>span{font-size:1.45rem;color:var(--brand)}.feature-grid small{color:var(--muted)}
.memorial-card{display:grid;grid-template-columns:64px 1fr auto;align-items:center;gap:1rem;margin-top:1rem;padding:1rem}.memorial-card img{width:64px;border-radius:18px}.memorial-card h2,.memorial-card p{margin:.05rem 0}.memorial-card p{color:var(--muted);font-family:"Noto Naskh Arabic",serif}

/* Quran */
.audio-entry-card{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:.85rem;margin-bottom:1rem;padding:1rem;border:1px solid color-mix(in srgb,var(--brand) 32%,var(--line));border-radius:var(--radius-lg);background:color-mix(in srgb,var(--brand) 5%,var(--surface));box-shadow:var(--shadow-sm)}.audio-entry-card img{width:54px;height:54px;border-radius:16px}.audio-entry-card h2,.audio-entry-card p{margin:.05rem 0}.audio-entry-card p,.audio-entry-card small{color:var(--muted)}
.toolbar{display:grid;grid-template-columns:1fr minmax(200px,.45fr);gap:.75rem;margin-bottom:.9rem}.surah-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-top:.9rem}.surah-list button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.65rem;padding:.9rem;text-align:right;color:var(--text)}.surah-list i{display:grid;place-items:center;min-width:34px;height:34px;border-radius:11px;background:var(--brand-soft);color:var(--brand);font-style:normal;font-weight:800}.surah-list small{color:var(--muted)}
.reader{position:fixed;inset:0;z-index:90;overflow:auto;overscroll-behavior:contain;background:var(--bg);padding:var(--safe-top) max(1rem,calc((100vw - 820px)/2)) calc(var(--nav-h) + 1.5rem + var(--safe-bottom))}.reader>header{position:sticky;top:0;z-index:2;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;padding:1rem 0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 96%,transparent);backdrop-filter:blur(14px);text-align:center}.reader>header button{border:1px solid var(--line);border-radius:13px;background:var(--surface)}.reader h2{margin:0}.reader small{color:var(--muted)}
.ayah{position:relative;margin:.8rem 0;padding:1.15rem 1rem 4.2rem;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);font-family:"Amiri Quran","Noto Naskh Arabic",serif;font-size:clamp(1.35rem,4vw,2rem);line-height:2.15;box-shadow:var(--shadow-sm)}.ayah-actions{position:absolute;inset-inline:.8rem;bottom:.75rem;display:flex;gap:.45rem;flex-wrap:wrap}.ayah-actions button{min-height:44px;padding:.35rem .75rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--text);font-family:"Noto Sans Arabic",sans-serif;font-size:.78rem}.ayah-actions .ayah-play{border-color:var(--brand);background:var(--brand);color:#fff}

/* Lists */
.chips,.targets,.tasbih-actions{display:flex;gap:.45rem;overflow:auto;padding:.15rem 0 .8rem;scrollbar-width:thin}.chips button,.targets button{white-space:nowrap;padding:.55rem .85rem;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text)}.chips button.active,.targets button.active{border-color:var(--brand);background:var(--brand);color:#fff}
.text-list{display:grid;gap:.75rem}.text-list article{padding:1rem;font-family:"Noto Naskh Arabic",serif;font-size:1.2rem;line-height:2}.text-list footer{display:flex;align-items:center;justify-content:space-between;gap:.7rem;flex-wrap:wrap;margin-top:.7rem;color:var(--muted);font-family:"Noto Sans Arabic",sans-serif;font-size:.76rem}.text-list button{border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);color:var(--brand);padding:.45rem .7rem}.dua-audio-button{background:var(--brand)!important;color:#fff!important;border-color:var(--brand)!important}.dua-no-audio{max-width:360px;color:var(--muted);line-height:1.5}

/* Tasbih */
.tasbih-shell{position:relative;display:grid;justify-items:center;padding:1.1rem;border:1px solid var(--line);border-radius:32px;background:var(--surface);box-shadow:var(--shadow-sm)}.tasbih-shell>.field{width:min(100%,560px);justify-self:stretch}.counter-shell{position:absolute;top:7.2rem;width:min(70vw,310px);aspect-ratio:1;border:7px dotted color-mix(in srgb,var(--brand) 42%,var(--line));border-radius:50%;pointer-events:none}.counter{position:relative;z-index:1;width:min(62vw,278px);aspect-ratio:1;display:grid;place-content:center;margin:2.3rem auto 1.2rem;padding:1rem;border:9px solid color-mix(in srgb,var(--brand) 18%,var(--surface));border-radius:50%;background:var(--brand);color:#fff;box-shadow:0 20px 48px color-mix(in srgb,var(--brand) 26%,transparent);user-select:none;-webkit-user-select:none;appearance:none}.counter>*{pointer-events:none}.counter span{font-size:clamp(4rem,18vw,5.8rem);font-weight:800;line-height:1}.counter small{opacity:.78}.counter em{margin-top:.45rem;font-style:normal;opacity:.9}.counter strong{margin-top:.6rem;font-size:.76rem}.counter:active{transform:scale(.97)}.targets{justify-content:center;max-width:100%}.tasbih-actions{justify-content:center;padding-bottom:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:.75rem}.stats div{display:grid;place-items:center;padding:.9rem;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.stats b{color:var(--brand);font-size:1.3rem}.stats small{color:var(--muted)}

/* Prayer and qibla */
.prayer-times{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin-top:.8rem}.prayer-times div{display:grid;place-items:center;padding:1rem;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.prayer-times span{color:var(--brand);font-weight:800}.qibla-card{text-align:center;padding:1.1rem}.qibla-card canvas{width:min(72vw,260px);height:auto;margin:auto}.qibla-card p{color:var(--muted)}

/* Settings and About */
.settings-list{display:grid;gap:.7rem}.settings-list>label,.settings-install{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:right}.settings-list>label>span,.settings-install>span:first-child{display:grid}.settings-list small,.settings-install small{color:var(--muted)}.settings-list input[type="checkbox"],.switch-row input[type="checkbox"]{width:22px;height:22px;accent-color:var(--brand)}.about-card{max-width:620px;margin:auto;padding:1.2rem;text-align:center}.about-card>img{width:min(55vw,240px);margin:auto;border-radius:34px}.about-card>p{color:var(--muted)}.memorial-prayer{padding:1rem;border:1px solid color-mix(in srgb,var(--brand) 25%,var(--line));border-radius:var(--radius-md);background:var(--brand-soft)}.memorial-prayer p{font-family:"Noto Naskh Arabic",serif;font-size:1.15rem}

/* Bottom navigation */
.bottom-nav{position:fixed;z-index:60;left:50%;bottom:max(.4rem,var(--safe-bottom));transform:translateX(-50%);width:min(680px,calc(100% - 1rem - var(--safe-left) - var(--safe-right)));min-height:var(--nav-h);display:grid;grid-template-columns:repeat(5,1fr);padding:.4rem;border:1px solid var(--line);border-radius:22px;background:color-mix(in srgb,var(--surface) 95%,transparent);box-shadow:var(--shadow-lg);backdrop-filter:blur(18px)}.bottom-nav button{display:grid;place-items:center;align-content:center;gap:.1rem;border:0;border-radius:15px;background:transparent;color:var(--muted)}.bottom-nav button.active{background:var(--brand-soft);color:var(--brand)}.bottom-nav button>span{font-size:1.25rem}.bottom-nav small{font-size:.7rem}

/* Mini player */
.audio-mini{position:fixed;z-index:70;bottom:calc(var(--nav-h) + var(--safe-bottom) + .85rem);width:min(420px,calc(100% - 1.5rem - var(--safe-left) - var(--safe-right)));min-height:var(--player-h);display:grid;grid-template-columns:44px 42px minmax(0,1fr) 44px;align-items:center;gap:.5rem;padding:.45rem .55rem;border:1px solid color-mix(in srgb,var(--brand) 35%,var(--line));border-radius:22px;background:var(--surface);box-shadow:var(--shadow-lg);transition:left .18s var(--ease),right .18s var(--ease),transform .18s var(--ease)}
.audio-mini[data-snap="center"]{left:50%;right:auto;transform:translateX(-50%)}
.audio-mini[data-snap="left"]{left:max(.75rem,var(--safe-left));right:auto;transform:none}
.audio-mini[data-snap="right"]{right:max(.75rem,var(--safe-right));left:auto;transform:none}
.audio-mini>img{width:42px;height:42px;border-radius:13px}.mini-copy{display:grid;min-width:0;text-align:right}.mini-copy b,.mini-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-copy b{font-size:.82rem}.mini-copy small{color:var(--muted);font-size:.68rem}.audio-mini>button{border:0;border-radius:14px;background:var(--brand-soft);color:var(--brand)}.drag-handle{display:grid;place-items:center;touch-action:none!important;cursor:grab}.drag-handle:active{cursor:grabbing}.drag-handle span{display:block;width:20px;height:4px;border-radius:999px;background:currentColor;box-shadow:0 -7px 0 color-mix(in srgb,currentColor 45%,transparent),0 7px 0 color-mix(in srgb,currentColor 45%,transparent)}.audio-mini[data-status="buffering"]{border-color:var(--warning)}.audio-mini[data-status="error"]{border-color:var(--danger)}

/* Dialogs / bottom sheets */
dialog{padding:0;border:0;color:var(--text);background:transparent}
dialog::backdrop{background:rgba(12,18,15,.56);backdrop-filter:blur(2px)}
.bottom-sheet{position:fixed;inset:auto 0 calc(var(--nav-h) + var(--safe-bottom) + 1rem) 0;width:min(640px,calc(100% - 1rem - var(--safe-left) - var(--safe-right)));max-width:none;max-height:calc(100dvh - var(--nav-h) - var(--safe-top) - var(--safe-bottom) - 2rem);margin:auto;overflow:visible}.sheet-card{max-height:inherit;overflow:auto;overscroll-behavior:contain;padding:1rem 1rem calc(1rem + var(--safe-bottom));border:1px solid var(--line);border-radius:28px 28px 20px 20px;background:var(--surface);box-shadow:var(--shadow-lg)}.sheet-grip{width:42px;height:5px;margin:0 auto .85rem;border-radius:999px;background:var(--line)}.player-header,.search-sheet>header,.sheet-card>header,.small-dialog header{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.player-header img{width:56px;height:56px;border-radius:17px}.player-header>div{min-width:0;flex:1}.player-header h2{margin:.05rem 0;font-size:1rem}.player-header small,.player-header span{display:block;color:var(--muted);font-size:.72rem}.player-header [data-network="offline"]{color:var(--warning)}
.seek-field{display:block;margin-top:.8rem}.seek-field input{width:100%;min-height:44px;accent-color:var(--brand);direction:ltr}.audio-time{display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem;direction:ltr}.transport-controls{display:flex;justify-content:center;align-items:center;gap:.75rem;margin:.65rem 0}.transport-controls button{width:50px;height:50px;border:1px solid var(--line);border-radius:50%;background:var(--surface-soft);font-size:1.3rem}.transport-controls .play-button{width:auto;min-width:120px;border-radius:999px;background:var(--brand);color:#fff;font-size:.92rem}.player-options{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.55rem;margin-top:.7rem}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.65rem;border:1px solid var(--line);border-radius:13px;background:var(--surface-soft);font-size:.76rem}.repeat-range{display:grid;gap:.6rem;margin-top:.65rem;padding:.75rem;border:1px solid var(--line);border-radius:15px;background:var(--surface-soft)}.repeat-range>div:first-child{display:grid}.repeat-range small{color:var(--muted)}.repeat-range>div:last-child{display:flex;gap:.4rem;flex-wrap:wrap}.sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.75rem}
.small-dialog{position:fixed;inset:0;width:min(460px,calc(100% - 1.5rem));margin:auto}.small-dialog>section{padding:1rem;border:1px solid var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-lg)}.small-dialog h2{margin:0}.small-dialog .field{margin:.9rem 0}.small-dialog .primary-button{width:100%}
.install-steps{display:grid;gap:.8rem;padding-right:1.4rem}.install-steps li{padding-right:.25rem}

/* Search */
.search-dialog{z-index:120}.search-sheet{display:grid;grid-template-rows:auto auto auto minmax(0,1fr);gap:.75rem}.search-sheet h2{margin:0}.search-sheet header small{color:var(--muted)}.search-field{display:grid;grid-template-columns:34px 1fr 42px;align-items:center;gap:.3rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:16px;background:var(--surface-soft)}.search-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 14%,transparent)}.search-field input{min-height:44px;border:0;outline:0;background:transparent}.search-field>button{border:0;border-radius:12px;background:var(--surface);color:var(--muted)}.search-meta{display:flex;justify-content:space-between;gap:.8rem;color:var(--muted);font-size:.74rem}.search-meta output{color:var(--brand);font-weight:800}.search-results{display:grid;gap:.75rem;overflow:auto;min-height:140px;max-height:min(56dvh,520px)}.search-category{display:grid;gap:.45rem}.search-category>header{display:flex;justify-content:space-between;align-items:center;padding:.15rem .1rem}.search-category h3{margin:0;font-size:.9rem}.search-category header span{color:var(--muted);font-size:.72rem}.search-result{width:100%;display:grid;gap:.15rem;padding:.75rem .8rem;border:1px solid var(--line);border-radius:14px;background:var(--surface);text-align:right}.search-result small{color:var(--brand);font-weight:800}.search-result mark{padding:0 .08rem;border-radius:4px;background:color-mix(in srgb,var(--warning) 25%,transparent);color:inherit}.show-more{justify-self:start;border:0;background:transparent;color:var(--brand);font-weight:800}.search-empty{padding:2rem 1rem;text-align:center;color:var(--muted)}

/* Toast */
.toast{position:fixed;z-index:170;left:50%;bottom:calc(var(--nav-h) + var(--player-h) + var(--safe-bottom) + 1.6rem);transform:translate(-50%,16px);width:max-content;max-width:min(92vw,480px);padding:.75rem 1rem;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .18s var(--ease),transform .18s var(--ease);text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:820px){.feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.surah-list{grid-template-columns:repeat(2,minmax(0,1fr))}.home-grid{grid-template-columns:1fr}.install-card{grid-template-columns:56px 1fr}.install-card>img{width:56px;height:56px}.install-actions{grid-column:1/-1;justify-content:flex-end}.toolbar{grid-template-columns:1fr}.player-options{grid-template-columns:1fr}.bottom-sheet{inset:auto 0 calc(var(--nav-h) + var(--safe-bottom) + .8rem) 0}.sheet-actions{grid-template-columns:1fr}}
@media(max-width:560px){.brand-button small{display:none}.app-header{padding-inline:.6rem}.header-actions{gap:0}.header-actions .icon-button{width:42px}.feature-grid button{min-height:110px}.memorial-card{grid-template-columns:54px 1fr}.memorial-card img{width:54px}.memorial-card>.text-button{grid-column:1/-1;justify-self:start}.audio-entry-card{grid-template-columns:48px 1fr}.audio-entry-card img{width:48px;height:48px}.audio-entry-card>.primary-button{grid-column:1/-1;width:100%}.prayer-times{grid-template-columns:repeat(2,1fr)}.search-launch{grid-template-columns:44px 1fr}.search-launch>span:last-child{display:none}.bottom-nav{width:calc(100% - .75rem - var(--safe-left) - var(--safe-right));border-radius:19px}.bottom-nav small{font-size:.64rem}.bottom-sheet{width:calc(100% - .75rem - var(--safe-left) - var(--safe-right))}.sheet-card{border-radius:24px 24px 16px 16px}.audio-mini{width:calc(100% - 1rem - var(--safe-left) - var(--safe-right));bottom:calc(var(--nav-h) + var(--safe-bottom) + .7rem)}.audio-mini[data-snap="left"]{left:max(.5rem,var(--safe-left))}.audio-mini[data-snap="right"]{right:max(.5rem,var(--safe-right))}}
@media(max-width:360px){main{padding-inline:.65rem}.brand-button img{width:42px;height:42px}.brand-button b{font-size:.92rem}.feature-grid{gap:.55rem}.feature-grid button{padding:.75rem}.surah-list{grid-template-columns:1fr}.stats{gap:.4rem}.stats div{padding:.7rem}.counter{width:min(72vw,250px)}.counter-shell{width:min(80vw,280px)}.audio-mini{grid-template-columns:40px 38px minmax(0,1fr) 42px;gap:.35rem;padding:.4rem}.audio-mini>img{width:38px;height:38px}.mini-copy b{font-size:.76rem}.mini-copy small{font-size:.62rem}.repeat-range>div:last-child{display:grid}.repeat-range button{width:100%}}
@media(max-width:320px){.header-actions .icon-button{width:40px;min-width:40px}.brand-button{gap:.4rem}.brand-button img{width:40px;height:40px}.brand-button span small{display:none}.feature-grid{grid-template-columns:1fr 1fr}.feature-grid button{min-height:104px}.bottom-nav button>span{font-size:1.1rem}.bottom-nav small{font-size:.6rem}.audio-mini{width:calc(100% - .75rem - var(--safe-left) - var(--safe-right));grid-template-columns:38px 36px minmax(0,1fr) 40px}.audio-mini>img{width:36px;height:36px}.drag-handle{min-width:38px;width:38px}.player-header img{width:50px;height:50px}.transport-controls{gap:.45rem}.transport-controls .play-button{min-width:104px}}
@media(min-width:1024px){.feature-grid{grid-template-columns:repeat(8,minmax(0,1fr))}.feature-grid button{min-height:132px}.bottom-nav{bottom:1rem}.audio-mini{bottom:calc(var(--nav-h) + 1.5rem + var(--safe-bottom))}.bottom-sheet{bottom:calc(var(--nav-h) + 1.6rem + var(--safe-bottom))}}
@media(orientation:landscape) and (max-height:560px){main{padding-bottom:calc(var(--nav-h) + var(--player-h) + 1rem)}.bottom-sheet{max-height:calc(100dvh - var(--nav-h) - 1rem)}.sheet-card{padding-block:.7rem}.player-header img{width:46px;height:46px}.repeat-range{margin-top:.4rem}.transport-controls{margin:.35rem 0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
