:root{--bg:#07111f;--panel:rgba(255,255,255,.08);--panel2:rgba(255,255,255,.13);--text:#f8fafc;--muted:#b8c4d6;--gold:#f7c948;--green:#54d38a;--danger:#ff7777;--line:rgba(255,255,255,.13);--radius:24px;--scale:1}
*{box-sizing:border-box;min-width:0}html,body{margin:0;width:100%;height:100%;background:#07111f;color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;overflow:hidden}body{background:radial-gradient(circle at 15% 5%,#18345c 0,#07111f 42%,#030712 100%)}.tv-shell{width:100vw;height:100vh;padding:clamp(12px,2.2vh,34px) clamp(14px,2.6vw,54px);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:clamp(10px,1.6vh,22px);overflow:hidden}.hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:clamp(16px,2vw,36px);align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(14px,2vh,30px) clamp(18px,2.4vw,44px);box-shadow:0 22px 70px rgba(0,0,0,.26)}.label{font-size:clamp(13px,1.05vw,22px);color:var(--gold);letter-spacing:.02em;margin-bottom:.45vh}.hero h1{font-size:clamp(36px,4.05vw,78px);line-height:1.02;margin:0 0 .8vh;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subline{font-size:clamp(17px,1.35vw,30px);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desc{font-size:clamp(13px,.95vw,20px);color:var(--muted);margin-top:.45vh}.clock-box{text-align:left;direction:ltr}.clock{font-variant-numeric:tabular-nums;font-size:clamp(38px,4.6vw,86px);font-weight:900;line-height:.95}.date-line,.hijri-line{font-size:clamp(13px,1vw,22px);color:var(--muted);margin-top:.4vh;text-align:left}.top-grid{display:grid;grid-template-columns:1.2fr .9fr 1fr;gap:clamp(10px,1.2vw,22px)}.next-card,.weather-card,.special-card,.messages,.content-card,.prayer{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 50px rgba(0,0,0,.18)}.next-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(10px,1.5vw,26px);padding:clamp(12px,1.7vh,24px) clamp(16px,2vw,34px);background:linear-gradient(90deg,rgba(247,201,72,.18),rgba(255,255,255,.08))}.next-prayer{font-size:clamp(28px,2.65vw,54px);font-weight:950}.next-time{direction:ltr;font-size:clamp(30px,2.8vw,58px);font-weight:950;color:var(--gold)}.countdown{direction:ltr;font-size:clamp(22px,2vw,42px);font-weight:900;color:#fff}.weather-card,.special-card{padding:clamp(12px,1.6vh,22px) clamp(14px,1.7vw,28px);font-size:clamp(16px,1.2vw,26px)}.temp-line{font-size:clamp(22px,2vw,40px);font-weight:900;color:var(--green);direction:ltr;text-align:right}.prayer-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:clamp(10px,1.15vw,22px);min-height:0}.prayer{padding:clamp(12px,1.8vh,26px) clamp(10px,1.2vw,22px);text-align:center;display:flex;flex-direction:column;justify-content:center;min-height:0;position:relative;overflow:hidden}.prayer.active{background:var(--panel2);outline:2px solid rgba(247,201,72,.56)}.p-name{font-size:clamp(22px,1.7vw,36px);color:var(--muted);margin-bottom:clamp(8px,1vh,14px);font-weight:800}.p-time{direction:ltr;font-size:clamp(34px,3vw,66px);font-weight:950;line-height:1;font-variant-numeric:tabular-nums}.iqamah{direction:ltr;margin-top:clamp(8px,1.1vh,16px);color:var(--green);font-size:clamp(16px,1.25vw,28px);font-weight:800}.content-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(10px,1.15vw,22px)}.messages,.content-card{padding:clamp(12px,1.5vh,22px) clamp(16px,1.8vw,32px);font-size:clamp(18px,1.45vw,32px);min-height:clamp(76px,9vh,130px)}.messages strong,.content-card strong{color:var(--gold)}.content-card{font-size:clamp(15px,1.15vw,25px);color:#e9eef8}.overlay{position:fixed;inset:0;background:rgba(2,6,23,.92);display:grid;place-items:center;z-index:20}.overlay.hidden{display:none}.overlay-inner{text-align:center;border:1px solid rgba(247,201,72,.35);border-radius:34px;background:rgba(255,255,255,.08);padding:7vh 7vw;max-width:900px}.overlay-label{color:var(--gold);font-size:clamp(18px,1.5vw,32px)}.overlay h2{font-size:clamp(46px,5vw,96px);margin:2vh 0}.overlay p{font-size:clamp(22px,2vw,40px);color:var(--muted)}footer{display:flex;justify-content:space-between;color:rgba(255,255,255,.62);font-size:clamp(12px,.85vw,18px);direction:ltr}#status.ok{color:var(--green)}#status.err{color:var(--danger)}body.theme-green{--bg:#06281f;--gold:#8ef0ad}body.theme-blue{--bg:#071a35;--gold:#8cc7ff}body.theme-gold{--bg:#170f05;--gold:#f7c948}body.theme-ramadan{--bg:#04130d;--gold:#d7b56d}body.theme-eid{--bg:#102a43;--gold:#ffd166}@media(max-width:1500px){.tv-shell{padding:14px 20px;gap:10px}.hero h1{font-size:clamp(34px,3.7vw,62px)}.clock{font-size:clamp(34px,4vw,68px)}.prayer-grid{gap:10px}.p-time{font-size:clamp(30px,2.6vw,50px)}.p-name{font-size:clamp(18px,1.45vw,28px)}.iqamah{font-size:clamp(14px,1.05vw,22px)}}@media(max-width:1150px){html,body{overflow:auto}.tv-shell{height:auto;min-height:100vh;overflow:visible;grid-template-rows:auto}.hero{grid-template-columns:1fr}.clock-box{text-align:right}.top-grid,.content-grid{grid-template-columns:1fr}.prayer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero h1{white-space:normal}.clock{font-size:54px}.p-time{font-size:42px}.p-name{font-size:23px}}@media(max-width:700px){.prayer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.next-card{grid-template-columns:1fr}.hero{padding:18px}.hero h1{font-size:34px}.clock{font-size:42px}.p-time{font-size:34px}}

/* v06 APK-safe TV refinements */
body.theme-pulse_cards{--bg:#07111f;--gold:#f7c948;--green:#54d38a;background:radial-gradient(circle at 18% 8%,#164e63 0,#07111f 42%,#030712 100%)}
body.theme-broadcast_rows{--bg:#08111f;--gold:#8cc7ff;background:#08111f}.theme-broadcast_rows .prayer{border-radius:14px}.theme-broadcast_rows .prayer-grid{gap:8px}
body.theme-madinah_green{--bg:#06281f;--gold:#8ef0ad;background:radial-gradient(circle at 18% 8%,#09543f 0,#06281f 45%,#020807 100%)}
body.theme-makkah_gold{--bg:#170f05;--gold:#f7c948;background:radial-gradient(circle at 18% 8%,#4b3108 0,#170f05 50%,#050301 100%)}
body.theme-nordic_noor{--bg:#071a35;--gold:#8cc7ff;background:radial-gradient(circle at 18% 8%,#1e4976 0,#071a35 45%,#030712 100%)}
body.theme-royal_sapphire{--bg:#061329;--gold:#a5b4fc;background:radial-gradient(circle at 18% 8%,#312e81 0,#061329 48%,#030712 100%)}
body.theme-ottoman_navy{--bg:#020617;--gold:#d6a94a;background:radial-gradient(circle at 18% 8%,#0f2b46 0,#020617 50%,#000 100%)}
body.theme-glass_aurora{--bg:#031b26;--gold:#67e8f9;background:radial-gradient(circle at 10% 0,#0ea5e9 0,transparent 35%),radial-gradient(circle at 90% 20%,#22c55e 0,transparent 30%),#031b26}
body.theme-minimal_black{--bg:#000;--gold:#fff;background:#000}.theme-minimal_black .hero,.theme-minimal_black .prayer,.theme-minimal_black .next-card,.theme-minimal_black .weather-card,.theme-minimal_black .special-card,.theme-minimal_black .messages,.theme-minimal_black .content-card{background:#080808;border-color:#222;box-shadow:none}
body.theme-pearl_green{--bg:#0b1f17;--gold:#d9f99d;background:linear-gradient(145deg,#0b1f17,#123427)}
body.theme-premium_split{--bg:#061014;--gold:#facc15;background:linear-gradient(115deg,#061014 0 50%,#1f2937 50% 100%)}
.clock,.next-time,.countdown,.p-time,.iqamah{font-variant-numeric:tabular-nums;letter-spacing:.01em}.clock{min-width:6ch;display:inline-block}.countdown{min-width:8ch;display:inline-block}.weather-card.hidden{display:none!important}.top-grid.no-weather{grid-template-columns:1.2fr 1fr}.tv-shell{transform:translateZ(0)}

/* v07 runtime prayer screen saver + after-prayer adhkar */
.runtime-overlay{background:#000!important;color:#fff;z-index:99999;animation:runtimeFadeIn .55s ease both}
.runtime-overlay.mode-prayer{background:#000!important}
.runtime-overlay.mode-adhkar{background:radial-gradient(circle at 50% 15%,rgba(21,94,117,.34),transparent 32%),#020617!important}
.runtime-inner{max-width:min(1380px,92vw);width:min(1380px,92vw);padding:clamp(28px,6vh,80px) clamp(28px,6vw,90px);background:rgba(0,0,0,.64);border:1px solid rgba(247,201,72,.45);box-shadow:0 0 100px rgba(0,0,0,.65)}
.mode-prayer .runtime-inner{background:#000;border-color:rgba(255,255,255,.16);box-shadow:none}
.runtime-overlay .overlay-label{font-size:clamp(20px,2.1vw,42px);color:var(--gold);font-weight:900;margin-bottom:1.2vh}
.runtime-overlay h2{font-size:clamp(54px,7vw,136px);line-height:1.05;margin:1vh 0 2vh;font-weight:950;color:#fff}
.runtime-overlay p{font-size:clamp(26px,3vw,64px);line-height:1.45;color:#f8fafc;margin:0 auto 2.5vh;max-width:1100px;font-weight:800}
.runtime-timer{direction:ltr;font-size:clamp(34px,4vw,84px);font-weight:950;font-variant-numeric:tabular-nums;color:var(--gold);margin-top:2vh;min-width:8ch}
.runtime-adhkar{margin-top:2.5vh;text-align:center;color:#fff;line-height:1.7;font-size:clamp(22px,2vw,40px);max-height:55vh;overflow:hidden}
.runtime-adhkar .ayah-title{color:var(--gold);font-weight:950;margin-bottom:1vh;font-size:clamp(24px,2.4vw,48px)}
.runtime-adhkar .ayah{font-family:"Traditional Arabic","Amiri",serif;font-size:clamp(24px,2.35vw,46px);line-height:1.8;margin-bottom:1.2vh}
.runtime-adhkar .adhkar-line{font-weight:850;color:#e5e7eb;margin:.45vh 0}
body.runtime-prayer .tv-shell{filter:brightness(.15);opacity:0;transition:opacity .35s ease}
body.runtime-adhkar .tv-shell{filter:blur(2px) brightness(.35);transition:filter .35s ease}
@keyframes runtimeFadeIn{from{opacity:0}to{opacity:1}}


/* v08 direction controls + MasjidPulse Dark theme */
body.flow-ltr{direction:ltr} body.flow-rtl{direction:rtl}
body.boxes-ltr .prayer-grid{direction:ltr} body.boxes-rtl .prayer-grid{direction:rtl}
body.boxes-ltr .prayer,body.boxes-rtl .prayer{direction:inherit}
body.flow-ltr .clock-box{text-align:right} body.flow-rtl .clock-box{text-align:left}
body.flow-ltr .date-line,body.flow-ltr .hijri-line{text-align:right} body.flow-rtl .date-line,body.flow-rtl .hijri-line{text-align:left}

body.theme-masjidpulse_dark{
  --bg:#111827;--panel:rgba(31,42,58,.92);--panel2:rgba(49,63,82,.96);--text:#f8fafc;--muted:#cbd5e1;--gold:#ffd400;--green:#58e08a;--line:rgba(255,212,0,.18);
  background:radial-gradient(circle at 55% 10%,rgba(255,212,0,.08),transparent 24%),linear-gradient(135deg,#0b1220,#151e2c 60%,#0b1220);
}
.theme-masjidpulse_dark .tv-shell{padding:clamp(14px,2.3vh,38px) clamp(16px,3vw,62px);gap:clamp(10px,1.45vh,20px)}
.theme-masjidpulse_dark .hero{background:#151d2a;border-color:rgba(255,212,0,.18);box-shadow:0 20px 70px rgba(0,0,0,.34)}
.theme-masjidpulse_dark .hero h1{color:#fff;font-weight:950;letter-spacing:-.045em}
.theme-masjidpulse_dark .clock{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(34px,3.8vw,68px);color:#fff}
.theme-masjidpulse_dark .next-card{background:linear-gradient(90deg,rgba(255,212,0,.17),rgba(31,42,58,.95));border-color:rgba(255,212,0,.28)}
.theme-masjidpulse_dark .next-prayer,.theme-masjidpulse_dark .next-time,.theme-masjidpulse_dark .countdown{color:var(--gold)}
.theme-masjidpulse_dark .prayer{background:#1d2938;border-color:rgba(255,255,255,.09);border-radius:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 35px rgba(0,0,0,.18)}
.theme-masjidpulse_dark .prayer.active{background:#243447;outline:2px solid rgba(255,212,0,.65)}
.theme-masjidpulse_dark .p-name{color:#c8d4e5;text-transform:uppercase;font-size:clamp(16px,1.28vw,26px)}
.theme-masjidpulse_dark .p-time{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(30px,2.55vw,54px);color:#fff}
.theme-masjidpulse_dark .iqamah{color:var(--green);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.theme-masjidpulse_dark .messages,.theme-masjidpulse_dark .content-card,.theme-masjidpulse_dark .weather-card,.theme-masjidpulse_dark .special-card{background:#121a26;border-color:rgba(255,255,255,.09)}
.theme-masjidpulse_dark footer{color:#58e08a}
