:root{color-scheme:dark;--bg:#061511;--surface:rgba(8,31,27,.82);--surface-strong:#0b211d;--surface-soft:rgba(23,58,48,.75);--line:rgba(151,190,170,.15);--text:#f5f4ef;--muted:#aab7ae;--faint:#79887e;--accent:#39d1a0;--accent-strong:#19a87d;--accent-wash:rgba(57,209,160,.12);--gold:#d9bb70;--shadow:0 24px 90px rgba(0,0,0,.28);--radius:24px;--page-bg:url('/assets/theme-green.jpeg');font-family:'DM Sans',sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}html[data-theme="purple"]{--bg:#100920;--surface:rgba(28,15,48,.83);--surface-strong:#170d2a;--surface-soft:rgba(64,38,91,.76);--line:rgba(205,164,255,.15);--accent:#bc83ff;--accent-strong:#8650db;--accent-wash:rgba(188,131,255,.12);--gold:#e1bf82;--page-bg:url('/assets/theme-purple.jpeg')}html[data-theme="blue"]{--bg:#071428;--surface:rgba(10,27,51,.84);--surface-strong:#0b1930;--surface-soft:rgba(25,52,86,.78);--line:rgba(153,193,255,.16);--accent:#51b7ff;--accent-strong:#2585dd;--accent-wash:rgba(81,183,255,.13);--gold:#e2cb84;--page-bg:url('/assets/theme-blue.jpeg')}html[data-theme="gold"]{--bg:#12100d;--surface:rgba(26,24,21,.88);--surface-strong:#1c1a17;--surface-soft:rgba(56,50,39,.8);--line:rgba(222,190,119,.16);--accent:#dfc273;--accent-strong:#ad8742;--accent-wash:rgba(223,194,115,.12);--gold:#ead28e;--page-bg:url('/assets/theme-gold.jpeg')}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;color:var(--text);background:radial-gradient(ellipse at 15% 0%,color-mix(in srgb,var(--accent) 13%,transparent),transparent 38%),var(--bg);font-family:'DM Sans',sans-serif;line-height:1.5;min-height:100vh}body:before{content:"";position:fixed;inset:0;z-index:-1;background-image:linear-gradient(180deg,rgba(4,10,14,.64),rgba(4,10,14,.85)),var(--page-bg);background-size:cover;background-position:center;background-attachment:fixed;opacity:.3;pointer-events:none}.ambient{position:fixed;z-index:-1;inset:0;background:radial-gradient(ellipse at 80% 20%,color-mix(in srgb,var(--accent) 11%,transparent),transparent 32%);pointer-events:none}.topbar{height:82px;max-width:1320px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10;background:rgba(5,14,16,.58);backdrop-filter:blur(18px)}.brand,.footer-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--text);min-width:225px}.brand img{width:46px;height:46px;border-radius:13px;object-fit:cover;border:1px solid rgba(255,255,255,.15)}.brand strong,.footer-brand strong{font-family:Manrope,sans-serif;font-size:14px;letter-spacing:-.02em;display:block}.brand small,.footer-brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.03em}.desktop-nav{display:flex;align-items:center;gap:5px}.nav-link,.mobile-nav button{border:0;background:transparent;color:var(--muted);font:500 12px 'DM Sans',sans-serif;cursor:pointer;padding:11px 13px;border-radius:999px;transition:.2s}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--accent-wash)}.nav-link.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.header-actions{display:flex;align-items:center;gap:8px;min-width:205px;justify-content:flex-end}.icon-button,.language-button,.menu-button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:13px;padding:9px 12px;font:600 12px 'DM Sans',sans-serif;cursor:pointer;transition:.2s}.icon-button:hover,.language-button:hover{border-color:var(--accent);color:var(--accent)}.icon-button{width:38px;height:38px;font-size:18px;padding:0}.menu-button{display:none}.connection-banner{max-width:1320px;margin:0 auto;padding:9px 34px;color:var(--muted);font-size:11px;display:flex;gap:8px;align-items:center}.connection-banner[hidden]{display:none}.pulse-dot,.live-dot{width:7px;height:7px;display:inline-block;background:var(--accent);border-radius:50%;box-shadow:0 0 14px var(--accent)}main{max-width:1320px;padding:0 34px 70px;margin:auto}.page{display:none;animation:fadeup .32s ease}.page.active{display:block}@keyframes fadeup{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;letter-spacing:-.045em}h1{font-size:clamp(38px,5.7vw,70px);line-height:1.04;font-weight:600}h2{font-size:clamp(21px,2.4vw,29px);line-height:1.16;font-weight:600;margin-bottom:0}p{color:var(--muted)}.hero{min-height:540px;margin-top:27px;border-radius:32px;position:relative;overflow:hidden;background:#071812 url('/assets/masjid-hero.jpeg') center 51%/cover no-repeat;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;padding:clamp(28px,6vw,78px)}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,15,16,.92) 0%,rgba(3,15,16,.73) 44%,rgba(3,15,16,.08) 100%),linear-gradient(0deg,rgba(3,10,12,.66),transparent 42%)}.hero-copy{position:relative;z-index:1;max-width:610px}.eyebrow,.section-kicker{font-size:10px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:9px}.hero h1{margin:19px 0 15px;color:#fff}.hero h1 em{font-style:normal;color:var(--gold)}.hero-copy>p{font-size:15px;color:#f0f1ec;line-height:1.8}.hero-muted{color:#d2d7d0}.hero-actions{display:flex;gap:10px;margin-top:23px;flex-wrap:wrap}.button{text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:12px 18px;display:inline-flex;align-items:center;gap:16px;justify-content:center;font:600 12px 'DM Sans',sans-serif;color:var(--text);cursor:pointer;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--accent);color:#05231a;border-color:transparent}.button-primary:hover{background:color-mix(in srgb,var(--accent) 83%,white)}.button-ghost{background:rgba(7,17,19,.44);backdrop-filter:blur(10px);border-color:rgba(255,255,255,.38)}.next-card{position:absolute;z-index:2;right:clamp(22px,5vw,68px);bottom:73px;width:min(285px,31%);padding:19px 20px;border-radius:21px}.glass{background:rgba(7,19,19,.68);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(16px);box-shadow:0 18px 48px rgba(0,0,0,.24)}.next-card-top{display:flex;justify-content:space-between;align-items:center}.next-card .eyebrow{font-size:9px;color:#f5dda1}.sun-mark{font-size:28px;color:var(--gold)}.next-name{font:600 21px Manrope,sans-serif;margin-top:4px}.next-time{font:700 34px Manrope,sans-serif;letter-spacing:-.05em;color:var(--gold);line-height:1.18}.next-meta{font-size:11px;color:rgba(255,255,255,.75);margin-top:6px}.countdown{font-size:10px;color:var(--accent);border-top:1px solid rgba(255,255,255,.16);margin-top:13px;padding-top:10px;display:flex;align-items:center;gap:7px}.countdown-dot{height:6px;width:6px;border-radius:50%;background:var(--accent)}.hero-caption{position:absolute;z-index:1;bottom:24px;left:clamp(28px,6vw,78px);display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.73);font-size:10px;letter-spacing:.06em}.hero-caption b{color:var(--gold)}.caption-rule{width:27px;height:1px;background:var(--gold)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:53px 0 17px}.section-heading h2{margin-top:7px}.text-link{border:0;background:transparent;color:var(--accent);font:600 12px 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap;padding:8px 0}.text-link:hover{color:var(--text)}.prayer-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.prayer-tile{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:17px;padding:16px;background:var(--surface);backdrop-filter:blur(12px);transition:.2s}.prayer-tile.next{background:linear-gradient(135deg,var(--accent-wash),var(--surface));border-color:color-mix(in srgb,var(--accent) 45%,transparent);box-shadow:0 10px 26px color-mix(in srgb,var(--accent) 9%,transparent)}.prayer-tile.next:after{content:"NEXT";position:absolute;right:12px;top:12px;color:var(--accent);font-size:8px;letter-spacing:.14em;font-weight:700}.prayer-name{font-size:12px;color:var(--muted);font-weight:600}.prayer-azan{font:600 20px Manrope,sans-serif;margin-top:8px}.prayer-iqamah{font-size:10px;color:var(--gold);margin-top:4px}.home-lower-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:13px;margin-top:34px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:23px;backdrop-filter:blur(14px);box-shadow:0 10px 40px rgba(0,0,0,.09)}.section-heading.compact{margin:0 0 17px}.section-heading.compact h2{font-size:21px}.mini-list{display:grid;gap:10px}.mini-update{display:flex;gap:12px;align-items:center;padding:11px;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055);cursor:pointer}.mini-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:var(--accent);background:var(--accent-wash);flex:none}.mini-update strong{font-size:12px;display:block}.mini-update small{color:var(--muted);font-size:10px}.jummah-panel{background:linear-gradient(145deg,var(--accent-wash),var(--surface) 67%)}.crescent-badge{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;background:var(--accent-wash);color:var(--gold);font-size:20px}.special-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid var(--line)}.special-line strong{font-size:12px}.special-line span{font-size:11px;color:var(--gold)}.special-line small{display:block;color:var(--muted);font-size:10px}.muted{color:var(--muted);font-size:12px}.verse-banner{margin-top:14px;padding:20px 23px;display:flex;align-items:center;gap:19px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(100deg,var(--accent-wash),rgba(8,21,18,.68));}.verse-ornament{color:var(--gold);font-size:33px}.verse-banner .section-kicker{font-size:8px}.verse-banner p{font-family:'Noto Nastaliq Urdu',serif;font-size:22px;color:var(--text);margin:8px 0 4px}.verse-banner small{font-size:10px;color:var(--muted)}.verse-banner small span{color:var(--gold)}.page-header{padding:63px 0 26px}.page-header h1{font-size:clamp(37px,5vw,58px);margin:12px 0 8px}.page-header p{font-size:14px;margin:0}.split-header{display:flex;justify-content:space-between;align-items:center}.page-emblem{font-size:56px;color:var(--accent);opacity:.6}.prayer-page-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:15px}.schedule-panel{padding:23px}.schedule-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.schedule-title h2{margin-top:6px}.timezone-pill{font-size:10px;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:999px;padding:6px 10px}.prayer-rows{display:grid;gap:8px}.prayer-row{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:10px;padding:14px 15px;border:1px solid transparent;border-radius:15px;background:rgba(255,255,255,.035)}.prayer-row.next{background:var(--accent-wash);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.prayer-row-name{display:flex;align-items:center;gap:10px;font-weight:600;font-size:13px}.prayer-symbol{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--surface-soft);color:var(--accent);font-size:13px}.time-cell{text-align:right;font-size:12px}.time-cell small{display:block;color:var(--faint);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.time-cell strong{display:block;color:var(--text);font-weight:600;margin-top:2px}.time-cell.iqamah strong{color:var(--gold)}.fine-print{border-top:1px solid var(--line);padding-top:13px;margin:13px 0 0;font-size:10px;line-height:1.6}.schedule-aside{display:grid;gap:12px;align-content:start}.special-panel h2{margin:8px 0 12px}.special-event{padding:12px 0;border-top:1px solid var(--line)}.special-event h3{font:600 13px Manrope,sans-serif;margin:0 0 4px}.special-event time{font-size:10px;color:var(--gold)}.special-event p{font-size:11px;margin:5px 0 0;line-height:1.5}.location-card{display:flex;gap:12px;padding:17px;background:var(--surface);border:1px solid var(--line);border-radius:18px}.location-icon{font-size:23px;color:var(--accent)}.location-card strong,.location-card span{display:block}.location-card strong{font-size:11px}.location-card span{font-size:10px;color:var(--muted);margin-top:3px}.quran-layout{display:grid;grid-template-columns:330px 1fr;gap:14px;min-height:620px}.surah-panel{padding:14px;display:flex;flex-direction:column;max-height:720px}.search-box{display:flex;align-items:center;gap:9px;padding:10px 12px;background:var(--surface-strong);border:1px solid var(--line);border-radius:13px;color:var(--muted)}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--text);font:12px 'DM Sans',sans-serif}.search-box input::placeholder{color:var(--faint)}.surah-list{overflow:auto;padding:7px 1px}.surah-item{width:100%;border:0;background:transparent;color:var(--text);text-align:left;border-radius:13px;padding:10px;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;cursor:pointer}.surah-item:hover,.surah-item.selected{background:var(--accent-wash)}.surah-number{height:31px;width:31px;border-radius:50%;display:grid;place-items:center;background:var(--surface-soft);color:var(--accent);font-size:11px}.surah-item strong{display:block;font-size:12px;font-weight:600}.surah-item small{font-size:9px;color:var(--muted)}.surah-arabic{font:19px 'Noto Nastaliq Urdu',serif}.quran-reader{padding:clamp(19px,4vw,43px);max-height:720px;overflow:auto}.reader-placeholder{height:100%;min-height:450px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.reader-mark{font:58px 'Noto Nastaliq Urdu',serif;color:var(--gold)}.reader-placeholder h2{margin:15px 0 8px}.reader-placeholder p{max-width:370px;font-size:12px}.reader-rule{width:50px;height:1px;background:var(--gold);margin:16px}.reader-placeholder small,.quran-credit{font-size:10px;color:var(--faint)}.quran-credit{text-align:center;margin-top:14px}.reader-header{text-align:center;padding-bottom:18px;border-bottom:1px solid var(--line)}.reader-header .surah-arabic{font-size:34px;color:var(--gold)}.reader-header h2{font-size:22px;margin:6px}.reader-header p{font-size:10px;margin:0}.ayah-row{display:grid;grid-template-columns:34px 1fr;gap:13px;padding:19px 0;border-bottom:1px solid var(--line);align-items:start}.ayah-num{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:var(--accent-wash);color:var(--accent);font-size:10px}.ayah-text{font:24px/2.1 'Noto Nastaliq Urdu',serif;text-align:right;color:var(--text)}.loading-state,.empty-state{padding:32px;text-align:center;color:var(--muted);font-size:12px}.spinner{width:24px;height:24px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.qibla-layout{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:900px;margin:auto}.compass-panel{text-align:center;padding:30px}.compass{width:min(74vw,330px);height:min(74vw,330px);margin:0 auto 17px;border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:50%;position:relative;background:radial-gradient(circle,var(--surface-strong) 0 40%,rgba(255,255,255,.025) 40.5% 60%,var(--surface) 61%);box-shadow:inset 0 0 60px rgba(0,0,0,.2),0 0 36px var(--accent-wash)}.compass:before,.compass:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%;inset:12%;pointer-events:none}.compass:after{inset:23%}.compass-label{position:absolute;z-index:3;color:var(--muted);font-size:10px;font-weight:700}.north{top:8px;left:50%;transform:translateX(-50%);color:var(--accent)}.south{bottom:8px;left:50%;transform:translateX(-50%)}.east{right:10px;top:50%;transform:translateY(-50%)}.west{left:10px;top:50%;transform:translateY(-50%)}.compass-ticks{position:absolute;inset:4%;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(224,238,230,.52) 0deg 1deg,transparent 1deg 15deg);mask:radial-gradient(transparent 70%,#000 71% 72%,transparent 73%)}.kaaba-mark{position:absolute;inset:0;display:grid;place-items:center;color:var(--gold);font-size:36px;z-index:1}.needle-wrap{position:absolute;z-index:2;inset:13% 0;transform:rotate(0deg);transition:transform .3s}.needle{position:absolute;top:0;left:50%;height:50%;width:2px;background:linear-gradient(var(--accent) 0 48%,transparent 48%);transform:translateX(-50%);transform-origin:bottom}.compass-center{position:absolute;z-index:4;width:11px;height:11px;border-radius:50%;background:var(--gold);left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 13px var(--gold)}.bearing-value{font:700 32px Manrope,sans-serif;color:var(--text)}.bearing-caption{color:var(--muted);font-size:11px}.location-button{margin-top:20px}.location-result{font-size:10px;margin-bottom:0}.qibla-info{align-self:center}.qibla-info h2{margin:10px 0}.qibla-info>p{font-size:12px;line-height:1.8}.kaaba-card{margin-top:25px;padding:15px;border-radius:15px;background:var(--surface-soft);display:flex;align-items:center;gap:12px}.kaaba-icon{font-size:27px;color:var(--gold)}.kaaba-card strong,.kaaba-card small{display:block}.kaaba-card strong{font-size:12px}.kaaba-card small{font-size:9px;color:var(--muted);margin-top:3px}.distance{margin-left:auto;font-size:10px;color:var(--accent)}.filter-row{display:flex;gap:8px;margin-bottom:17px}.filter-chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);font:500 11px 'DM Sans',sans-serif;padding:8px 14px;border-radius:999px;cursor:pointer}.filter-chip.selected{background:var(--accent);color:#061d16;border-color:transparent;font-weight:700}.announcement-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.announcement-card{position:relative;overflow:hidden;min-height:175px;padding:20px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(135deg,var(--card-tint,var(--accent-wash)),var(--surface) 64%);display:flex;flex-direction:column}.announcement-card:before{content:"";position:absolute;right:-38px;top:-53px;width:150px;height:150px;border-radius:50%;border:1px solid color-mix(in srgb,var(--card-accent,var(--accent)) 24%,transparent)}.announcement-meta{display:flex;align-items:center;gap:10px}.announcement-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:var(--card-tint,var(--accent-wash));color:var(--card-accent,var(--accent));font-size:17px}.announcement-meta small{color:var(--card-accent,var(--accent));font-size:9px;letter-spacing:.04em}.announcement-card h3{font-size:16px;margin:16px 0 6px;position:relative}.announcement-card p{font-size:12px;line-height:1.7;margin:0;white-space:pre-wrap;position:relative}.announcement-card time{margin-top:auto;padding-top:16px;text-align:right;color:var(--muted);font-size:9px}.announcement-card video{width:100%;max-height:240px;object-fit:cover;border-radius:13px;margin-top:13px;background:#000}.video-cover{display:flex;align-items:center;justify-content:center;height:148px;margin-top:12px;border-radius:14px;background:linear-gradient(135deg,var(--accent-wash),rgba(0,0,0,.25));color:var(--accent);font-size:40px}.events-layout{display:grid;grid-template-columns:minmax(320px,.85fr) 1.15fr;gap:15px}.calendar-panel{height:max-content}.calendar-head{display:flex;align-items:center;justify-content:space-between}.calendar-head h2{font-size:17px;letter-spacing:-.02em}.calendar-head .icon-button{font-size:21px}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;text-align:center}.calendar-weekdays{margin-top:15px;color:var(--muted);font-size:9px}.calendar-days{margin-top:5px}.calendar-day{aspect-ratio:1;display:grid;place-items:center;position:relative;border:0;background:transparent;color:var(--text);border-radius:50%;font:11px 'DM Sans',sans-serif;cursor:pointer}.calendar-day:hover{background:var(--surface-soft)}.calendar-day.selected{background:var(--accent);color:#041b14;font-weight:700}.calendar-day.today:not(.selected){outline:1px solid var(--accent)}.calendar-day.has-event:after{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold);position:absolute;bottom:4px}.clear-date{margin-top:11px}.events-list-wrap .section-heading{margin:0 0 12px}.event-list{display:grid;gap:9px}.event-card{display:grid;grid-template-columns:66px 1fr;gap:13px;padding:14px;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.event-date{border-radius:12px;background:var(--accent-wash);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--accent);min-height:59px}.event-date small{font-size:9px;text-transform:uppercase}.event-date strong{font:700 20px Manrope,sans-serif;color:var(--text)}.event-card h3{font-size:14px;margin:1px 0 4px}.event-card time{font-size:10px;color:var(--gold)}.event-card p{font-size:11px;margin:5px 0 0;line-height:1.5}.dhikr-panel{max-width:780px;margin:auto}.segment-control{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;background:var(--surface-strong);border-radius:999px}.segment-control button{border:0;border-radius:999px;background:transparent;color:var(--muted);padding:10px 5px;font:500 11px 'DM Sans',sans-serif;cursor:pointer}.segment-control button.selected{color:#05231a;background:var(--accent);font-weight:700}.dhikr-item{padding:26px 10px;border-bottom:1px solid var(--line)}.dhikr-item:last-child{border:0}.dhikr-arabic{font:26px/1.9 'Noto Nastaliq Urdu',serif;text-align:center;color:var(--text)}.dhikr-meaning{text-align:center;color:var(--muted);font-size:12px;margin:9px auto 16px;max-width:480px}.dhikr-meaning.urdu{font-family:'Noto Nastaliq Urdu',serif;font-size:15px}.dhikr-actions{display:flex;justify-content:center;align-items:center;gap:12px}.dhikr-count{font-size:11px;color:var(--gold);min-width:58px}.small-button{border:1px solid var(--line);background:var(--surface-soft);color:var(--text);border-radius:999px;padding:8px 15px;font:600 11px 'DM Sans',sans-serif;cursor:pointer}.tasbeeh-panel{max-width:540px;margin:auto;text-align:center;padding:35px 22px}.tasbeeh-orbit{width:min(65vw,280px);height:min(65vw,280px);margin:auto;border-radius:50%;padding:15px;background:conic-gradient(var(--accent) var(--progress,0%),var(--surface-soft) 0);cursor:pointer;box-shadow:0 0 40px var(--accent-wash);transition:transform .1s}.tasbeeh-orbit:active{transform:scale(.97)}.tasbeeh-progress{height:100%;width:100%;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle,var(--surface-strong),var(--bg));border:1px solid var(--line)}.tasbeeh-progress div{display:flex;flex-direction:column}.tasbeeh-progress strong{font:400 65px Manrope,sans-serif;line-height:1}.tasbeeh-progress span{color:var(--muted);font-size:11px;margin-top:8px}.tap-hint{font-size:11px;margin:17px 0 20px}.tasbeeh-controls{display:flex;justify-content:center;align-items:center;gap:9px}.target-select{display:flex;align-items:center;gap:6px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:10px}.target-select select,.setting-line select{border:0;outline:0;color:var(--text);background:transparent;font:600 11px 'DM Sans',sans-serif}.target-select option,.setting-line option{background:var(--surface-strong)}.feature-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.feature-card{min-height:145px;text-align:left;border:1px solid var(--line);border-radius:19px;padding:18px;background:var(--surface);color:var(--text);display:flex;flex-direction:column;align-items:flex-start;cursor:pointer;transition:.2s}.feature-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-wash)}.feature-card>span{font-size:24px;color:var(--accent);margin-bottom:auto}.feature-card strong{font:600 13px Manrope,sans-serif;margin-top:15px}.feature-card small{color:var(--muted);font-size:10px;margin-top:3px}.settings-panel{margin-top:14px}.setting-line{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid var(--line)}.setting-line strong,.setting-line small{display:block}.setting-line strong{font-size:12px}.setting-line small{font-size:10px;color:var(--muted);margin-top:3px}.setting-line select{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;padding:9px 12px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.about-panel h2{margin:11px 0 4px}.about-panel p{font-size:12px}.about-panel .button{margin-top:7px}.about-photo{min-height:220px;border-radius:var(--radius);background:url('/assets/masjid-hero.jpeg') center/cover;border:1px solid var(--line)}.site-footer{max-width:1320px;margin:auto;padding:25px 34px 35px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px}.site-footer a{color:var(--accent);text-decoration:none}.footer-brand{min-width:0}.footer-brand img{width:35px;height:35px;object-fit:cover;border-radius:9px}.footer-brand strong{font-size:11px}.footer-brand small{font-size:9px}.footer-live{display:flex;gap:7px;align-items:center}.footer-live i{width:6px;height:6px;background:var(--accent);border-radius:50%}.mobile-nav{display:none}.toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,12px);padding:12px 17px;border-radius:12px;background:var(--surface-strong);border:1px solid var(--line);box-shadow:var(--shadow);font-size:12px;color:var(--text);opacity:0;pointer-events:none;transition:.2s;z-index:30;max-width:min(92vw,430px)}.toast.visible{opacity:1;transform:translate(-50%,0)}.skeleton{height:70px;border-radius:15px;background:linear-gradient(100deg,var(--surface) 30%,var(--surface-soft) 50%,var(--surface) 70%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{to{background-position:-200% 0}}[dir="rtl"]{font-family:'Noto Nastaliq Urdu','DM Sans',sans-serif}[dir="rtl"] .hero-copy{text-align:right}[dir="rtl"] .hero:before{background:linear-gradient(270deg,rgba(3,15,16,.92) 0%,rgba(3,15,16,.73) 44%,rgba(3,15,16,.08) 100%),linear-gradient(0deg,rgba(3,10,12,.66),transparent 42%)}[dir="rtl"] .hero-caption{left:auto;right:clamp(28px,6vw,78px)}[dir="rtl"] .prayer-row-name{flex-direction:row-reverse}[dir="rtl"] .time-cell{text-align:left}[dir="rtl"] .announcement-card{text-align:right}[dir="rtl"] .event-card{text-align:right}[dir="rtl"] .brand,[dir="rtl"] .footer-brand{flex-direction:row-reverse}
@media(max-width:1060px){.topbar{padding:0 22px}.brand{min-width:190px}.desktop-nav{gap:0}.nav-link{padding:10px 9px;font-size:11px}.header-actions{min-width:150px}main{padding-left:22px;padding-right:22px}.hero{min-height:490px}.next-card{right:28px;width:270px}.feature-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.topbar{height:69px;padding:0 16px}.brand{min-width:0}.brand img{width:40px;height:40px}.brand strong{font-size:12px}.brand small{font-size:9px}.desktop-nav{display:none}.header-actions{min-width:0}.menu-button{display:none}.header-actions .icon-button{width:35px;height:35px}.language-button{padding:8px 10px}main{padding:0 16px 105px}.connection-banner{padding:8px 17px;font-size:10px}.hero{min-height:595px;margin-top:15px;padding:28px 22px;align-items:flex-start;background-position:59% center;border-radius:25px}.hero:before{background:linear-gradient(180deg,rgba(3,15,16,.78),rgba(3,15,16,.34) 47%,rgba(3,10,12,.82))}.hero-copy{max-width:100%}.hero h1{font-size:clamp(37px,10vw,56px);margin-top:16px}.hero-copy>p{font-size:13px}.hero-actions{gap:8px}.button{padding:11px 14px;font-size:11px}.next-card{right:15px;bottom:68px;width:calc(100% - 30px);padding:14px 16px}.next-name{font-size:19px}.next-time{font-size:29px}.hero-caption{left:20px;bottom:21px;font-size:9px}.section-heading{margin-top:36px}.home-prayer-heading{margin-top:34px}.section-heading.compact{margin:0 0 15px}.prayer-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.prayer-tile:last-child{grid-column:1/-1}.prayer-tile{padding:14px}.prayer-azan{font-size:18px}.home-lower-grid{grid-template-columns:1fr;gap:10px;margin-top:20px}.panel{padding:18px;border-radius:20px}.verse-banner{align-items:flex-start;padding:16px;gap:12px}.verse-banner p{font-size:17px}.page-header{padding:41px 0 22px}.page-header h1{font-size:39px}.page-header p{font-size:12px}.prayer-page-grid,.qibla-layout,.events-layout,.about-grid{grid-template-columns:1fr}.prayer-page-grid{gap:10px}.schedule-panel{padding:14px}.prayer-row{padding:12px 10px;grid-template-columns:1fr 1fr 1fr;gap:5px}.prayer-row-name{gap:6px;font-size:11px}.prayer-symbol{width:25px;height:25px}.time-cell{font-size:10px}.time-cell small{font-size:8px}.quran-layout{grid-template-columns:1fr;min-height:unset}.surah-panel{max-height:380px}.quran-reader{min-height:400px;max-height:unset;padding:20px}.reader-placeholder{min-height:320px}.announcement-grid{grid-template-columns:1fr}.announcement-card{min-height:145px}.calendar-panel{padding:18px}.calendar-day{font-size:10px}.event-list{gap:8px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:8px}.feature-card{min-height:125px;padding:14px}.about-photo{min-height:180px}.site-footer{padding:19px 17px 112px;display:grid;grid-template-columns:1fr auto}.footer-live{grid-column:1/-1}.mobile-nav{display:flex;position:fixed;z-index:20;left:0;right:0;bottom:0;padding:8px 10px max(9px,env(safe-area-inset-bottom));background:rgba(5,13,17,.91);backdrop-filter:blur(20px);border-top:1px solid var(--line);justify-content:space-around}.mobile-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 2px;border-radius:13px}.mobile-nav button span{font-size:19px;line-height:1.2}.mobile-nav button small{font-size:9px}.mobile-nav button.active{color:var(--accent);background:var(--accent-wash)}[dir="rtl"] .hero-caption{right:20px}.compass{width:min(75vw,300px);height:min(75vw,300px)}.tasbeeh-panel{padding:25px 16px}.tasbeeh-orbit{width:min(70vw,260px);height:min(70vw,260px)}}
@media(max-width:380px){.brand small{max-width:155px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero{min-height:565px}.hero h1{font-size:35px}.header-actions{gap:5px}.prayer-row{grid-template-columns:.95fr 1fr 1fr}.prayer-row-name{font-size:10px}.prayer-rows{gap:6px}.section-heading.compact h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
