*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{background-color:var(--bg-primary);color:var(--text-primary);min-height:100dvh;transition:background-color .3s ease,color .3s ease}a{color:var(--accent-primary);text-decoration:none}h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}img,svg{display:block;max-width:100%}button{background:none;border:none;color:inherit;cursor:pointer;font:inherit}:root{--bg-primary:#fff;--bg-secondary:#f5f5f5;--bg-tertiary:#e8f5e9;--text-primary:#1a1a1a;--text-secondary:#616161;--text-arabic:#000;--accent-primary:#1b5e20;--accent-secondary:#4caf50;--accent-light:#c8e6c9;--border:#e0e0e0;--danger:#c62828;--warning:#f57f17;--success:#2e7d32;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-1:0 1px 3px rgba(0,0,0,.12);--shadow-2:0 3px 6px rgba(0,0,0,.16);--shadow-3:0 10px 20px rgba(0,0,0,.19)}[data-theme=dark]{--bg-primary:#121212;--bg-secondary:#1e1e1e;--bg-tertiary:#1b3a1b;--text-primary:#e0e0e0;--text-secondary:#9e9e9e;--text-arabic:#fff;--accent-primary:#66bb6a;--accent-secondary:#2e7d32;--accent-light:#1b3a1b;--border:#333;--danger:#ef5350;--warning:#ffb74d;--success:#66bb6a}@font-face{font-display:block;font-family:Uthmani;font-style:normal;font-weight:400;src:url(../fonts/uthmani.woff2) format("woff2")}.arabic-text{color:var(--text-arabic);direction:rtl;font-family:Uthmani,Traditional Arabic,Simplified Arabic,serif;font-size:var(--arabic-font-size,24px);letter-spacing:0;line-height:2;text-align:right;unicode-bidi:isolate;word-spacing:.05em}.tajweed .ham_wasl,.tajweed .laam_shamsiyah,.tajweed .slnt{color:#aaa}.tajweed .ghunnah{color:#169200}.tajweed .ikhpiaa,.tajweed .ikhpiaa_shafawi{color:#d98000}.tajweed .iqlab{color:#26bffd}.tajweed .idghaam_wo_ghunnah{color:#9400a8}.tajweed .idghaam_ghunnah,.tajweed .idghaam_shafawi{color:#169200}.tajweed .idghaam_mutajanisayn,.tajweed .idghaam_mutaqaribayn{color:#a44700}.tajweed .qalqalah{color:#dd0008}.tajweed .madda_normal{color:#537fff}.tajweed .madda_permissible{color:#4050ff}.tajweed .madda_necessary,.tajweed .madda_obligatory{color:#000ebc}@media(min-width:768px){.app-content{margin:0 auto;max-width:720px;padding-bottom:72px}.surah-reader__verses{margin:0 auto;max-width:640px}}@media(min-width:1024px){.app-shell{flex-direction:row}.app-content{flex:1;margin-left:220px;max-width:none;padding-bottom:0}.bottom-nav{display:none!important}.sidebar-nav{display:flex!important}}.download-overlay[data-v-20b049a5]{align-items:center;background:var(--surface);display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.download-overlay__content[data-v-20b049a5]{align-items:center;display:flex;flex-direction:column;gap:var(--space-4);max-width:360px;padding:var(--space-6);text-align:center}.download-overlay__icon[data-v-20b049a5]{font-size:48px}.download-overlay__title[data-v-20b049a5]{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.download-overlay__size[data-v-20b049a5]{color:var(--text-secondary);font-size:14px;margin:0}.download-overlay__progress[data-v-20b049a5]{width:100%}.download-overlay__progress-bar[data-v-20b049a5]{background:var(--surface-hover);border-radius:4px;height:8px;overflow:hidden;width:100%}.download-overlay__progress-fill[data-v-20b049a5]{background:var(--primary);border-radius:4px;height:100%;transition:width .3s ease}.download-overlay__progress-text[data-v-20b049a5]{color:var(--text-secondary);font-size:14px;margin:var(--space-2) 0 0}.download-overlay__btn[data-v-20b049a5]{border:none;border-radius:var(--radius-md);cursor:pointer;font-size:16px;font-weight:600;padding:var(--space-3) var(--space-4);width:100%}.download-overlay__btn--primary[data-v-20b049a5]{background:var(--primary);color:#fff}.download-overlay__btn--secondary[data-v-20b049a5]{background:transparent;color:var(--text-secondary)}.offline-banner[data-v-7f5eda9e]{align-items:center;background:#e8f5e9;color:#1b5e20;display:flex;font-size:13px;font-weight:500;justify-content:space-between;padding:var(--space-2) var(--space-4)}[data-theme=dark] .offline-banner[data-v-7f5eda9e]{background:#1b3a1b;color:#a5d6a7}.offline-banner__dismiss[data-v-7f5eda9e]{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;padding:var(--space-1)}.audio-player[data-v-f87dd1ec]{animation:slideUp-f87dd1ec .2s ease;background:var(--surface);border-top:1px solid var(--border);bottom:64px;left:0;position:fixed;right:0;z-index:100}@keyframes slideUp-f87dd1ec{0%{transform:translateY(100%)}to{transform:translateY(0)}}.audio-player__progress[data-v-f87dd1ec]{background:var(--surface-hover);cursor:pointer;height:4px}.audio-player__progress-fill[data-v-f87dd1ec]{background:var(--primary);height:100%;transition:width .3s linear}.audio-player__controls[data-v-f87dd1ec]{align-items:center;display:flex;gap:var(--space-2);justify-content:space-between;padding:var(--space-2) var(--space-4)}.audio-player__info[data-v-f87dd1ec]{display:flex;flex:1;flex-direction:column;min-width:0}.audio-player__name[data-v-f87dd1ec]{color:var(--text-primary);font-size:14px;font-weight:600}.audio-player__name[data-v-f87dd1ec],.audio-player__reciter[data-v-f87dd1ec]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-player__reciter[data-v-f87dd1ec]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:12px;padding:0;text-align:left}.audio-player__buttons[data-v-f87dd1ec]{align-items:center;display:flex;gap:var(--space-1)}.audio-player__btn[data-v-f87dd1ec]{background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:18px;padding:var(--space-1)}.audio-player__btn--play[data-v-f87dd1ec]{font-size:24px}.audio-player__btn[data-v-f87dd1ec]:disabled{cursor:default;opacity:.5}.audio-player__time[data-v-f87dd1ec]{color:var(--text-secondary);font-size:11px;white-space:nowrap}.reciter-overlay[data-v-f91c5691]{align-items:flex-end;animation:fadeIn-f91c5691 .2s ease;background:#00000080;display:flex;inset:0;position:fixed;z-index:200}@keyframes fadeIn-f91c5691{0%{opacity:0}to{opacity:1}}.reciter-sheet[data-v-f91c5691]{animation:sheetUp-f91c5691 .25s ease;background:var(--surface);border-radius:16px 16px 0 0;display:flex;flex-direction:column;max-height:70vh;width:100%}@keyframes sheetUp-f91c5691{0%{transform:translateY(100%)}to{transform:translateY(0)}}.reciter-sheet__header[data-v-f91c5691]{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:var(--space-4)}.reciter-sheet__title[data-v-f91c5691]{color:var(--text-primary);font-size:18px;font-weight:600;margin:0}.reciter-sheet__close[data-v-f91c5691]{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:20px;padding:var(--space-1)}.reciter-sheet__loading[data-v-f91c5691]{color:var(--text-secondary);padding:var(--space-8);text-align:center}.reciter-sheet__list[data-v-f91c5691]{list-style:none;margin:0;overflow-y:auto;padding:0;-webkit-overflow-scrolling:touch}.reciter-item[data-v-f91c5691]{align-items:center;border-bottom:1px solid var(--border);cursor:pointer;display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4);transition:background-color .15s}.reciter-item[data-v-f91c5691]:hover{background:var(--surface-hover)}.reciter-item--active[data-v-f91c5691]{background:var(--accent-light,rgba(27,94,32,.08))}.reciter-item__name[data-v-f91c5691]{color:var(--text-primary);flex:1;font-size:15px}.reciter-item__style[data-v-f91c5691]{background:var(--surface-hover);border-radius:12px;color:var(--text-secondary);font-size:12px;padding:2px 8px}.reciter-item__check[data-v-f91c5691]{color:var(--primary);font-size:18px;font-weight:700}.sidebar-nav[data-v-d431066f]{background:var(--bg-primary);border-right:1px solid var(--border);bottom:0;display:none;flex-direction:column;left:0;padding:var(--space-4) 0;position:fixed;top:0;width:220px;z-index:100}.sidebar-nav__brand[data-v-d431066f]{color:var(--primary);font-size:20px;font-weight:700;margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4)}.sidebar-nav__item[data-v-d431066f]{align-items:center;border-radius:0;color:var(--text-secondary);display:flex;font-size:15px;gap:var(--space-3);padding:var(--space-2) var(--space-4);text-decoration:none;transition:background .15s ease,color .15s ease}.sidebar-nav__item[data-v-d431066f]:hover{background:var(--surface-hover,rgba(0,0,0,.05))}.sidebar-nav__item--active[data-v-d431066f]{background:var(--surface);color:var(--primary)}.sidebar-nav__icon[data-v-d431066f]{font-size:20px}.sidebar-nav__label[data-v-d431066f]{font-size:14px}.bottom-nav[data-v-9d7faaea]{background:var(--bg-primary);border-top:1px solid var(--border);bottom:0;justify-content:space-around;left:0;padding:var(--space-2) 0;padding-bottom:calc(var(--space-2) + env(safe-area-inset-bottom,0px));position:fixed;right:0;z-index:100}.bottom-nav[data-v-9d7faaea],.bottom-nav__item[data-v-9d7faaea]{align-items:center;display:flex}.bottom-nav__item[data-v-9d7faaea]{border-radius:var(--radius-sm);color:var(--text-secondary);flex-direction:column;font-size:12px;gap:2px;padding:var(--space-1) var(--space-2);text-decoration:none;transition:color .15s ease}.bottom-nav__item--active[data-v-9d7faaea]{color:var(--accent-primary)}.bottom-nav__icon[data-v-9d7faaea]{font-size:20px;line-height:1}.bottom-nav__label[data-v-9d7faaea]{font-size:11px}.app-shell{display:flex;flex-direction:column;min-height:100dvh}.app-content{flex:1;padding-bottom:72px}.page-enter-active,.page-leave-active{transition:opacity .15s ease}.page-enter-from,.page-leave-to{opacity:0}@media(prefers-reduced-motion:reduce){.page-enter-active,.page-leave-active{transition:none}*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.skip-link{background:var(--primary,#1b5e20);color:#fff;font-weight:600;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-100%;z-index:10000}.skip-link:focus{top:0}:focus-visible{outline:2px solid var(--primary,#1b5e20);outline-offset:2px}
