:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#2f281c;--muted:#75664f;--gold:#b78a35;--gold-dark:#85601f;--gold-soft:#b78a352e;--paper:#fbf7ef;--paper-strong:#fffdf8;--line:#b78a3561;--shadow:0 20px 45px #573e1824;font-family:Avenir Arabic,Geeza Pro,Noto Naskh Arabic,Segoe UI,Tahoma,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;color:var(--ink);background:radial-gradient(circle at 12% 8%,#ffffffe6,#0000 32rem),linear-gradient(#f8f0e3 0%,#fffaf2 44%,#f4ead8 100%);margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.page-shell{min-height:100vh;padding-bottom:46px;position:relative;overflow:hidden}.page-shell:before,.page-shell:after{content:"";pointer-events:none;opacity:.28;z-index:0;height:210px;position:fixed;inset-inline:0}.page-shell:before{background:linear-gradient(180deg, #fffdf800 0%, var(--paper) 100%), url(/assets/makkah-reference.jpg) top left / min(720px, 100vw) auto no-repeat;top:0}.page-shell:after{background:linear-gradient(0deg, #fffdf81f 0%, var(--paper) 85%), url(/assets/makkah-reference.jpg) bottom center / min(980px, 120vw) auto no-repeat;bottom:-20px}.top-scene{pointer-events:none;z-index:1;position:absolute;inset:0}.top-scene:before,.top-scene:after{content:"";border:1px solid #b78a3538;width:150px;height:150px;position:absolute;transform:rotate(45deg)}.top-scene:before{top:40px;right:-80px}.top-scene:after{bottom:118px;left:-92px}.page-content{z-index:2;width:min(980px,100% - 28px);margin:0 auto;padding-top:22px;position:relative}.site-header{color:var(--gold-dark);justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.site-header p,.site-header time{margin:0}.site-header p{font-size:clamp(1.25rem,4vw,1.75rem);font-weight:800}.site-header time{color:var(--muted);font-size:.95rem}.prayer-countdown{text-align:center;background:linear-gradient(#fff8e7f5,#fffdf8eb);border:1px solid #85601f6b;border-radius:18px;place-items:center;gap:4px;margin-bottom:10px;padding:16px;display:grid;box-shadow:0 12px 28px #684a1f1a}.prayer-countdown span{color:var(--gold-dark);font-weight:800}.prayer-countdown strong{color:var(--ink);direction:ltr;font-size:clamp(2rem,8vw,4rem);line-height:1}.prayer-strip{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.prayer-time{border:1px solid var(--line);background:#fffdf8d6;border-radius:18px;place-items:center;min-height:94px;padding:10px 6px;display:grid;box-shadow:0 10px 24px #684a1f14}.prayer-time small{color:var(--gold-dark);font-size:.74rem;font-weight:800}.prayer-time span{color:var(--muted);font-size:.9rem}.prayer-time strong{color:var(--ink);font-size:clamp(1.08rem,2vw,1.45rem)}.prayer-time.is-next{background:linear-gradient(#fff8e7,#f4d992);border-color:#85601fa3}.feature-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px;display:grid}.feature-actions button{color:#fff;background:linear-gradient(#b78a35,#85601f);border:1px solid #85601f70;border-radius:16px;min-height:52px;font-weight:900;box-shadow:0 10px 22px #85601f29}.content-frame,.announcement,.travel-panel,.today-schedule,.poll-card,.feedback{border:1px solid var(--line);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf8e6}.travel-card{margin-bottom:18px}.travel-hero{text-align:center;background:linear-gradient(90deg,#fffdf847,#fffdf8eb 48%,#fffdf8e0),url(/assets/makkah-reference.jpg) 0/cover no-repeat;border-radius:24px 24px 0 0;align-content:center;justify-items:center;min-height:180px;padding:28px;display:grid}.travel-hero h2,.travel-hero p{margin:0}.travel-hero h2{color:#111;font-size:clamp(2rem,7vw,4rem);font-weight:900}.travel-hero p{color:var(--gold-dark);margin-top:8px;font-size:clamp(1.4rem,4vw,2.6rem);font-weight:900}.travel-panel{border-radius:0 0 28px 28px;padding:clamp(18px,4vw,34px)}.travel-meta{background:#fff8e7d1;border:1px solid #b78a3552;border-radius:18px;justify-content:center;align-items:center;gap:12px;min-height:56px;margin:0 auto 22px;padding:8px 18px;display:inline-flex}.travel-meta span{color:var(--muted);font-weight:800}.travel-meta strong{color:var(--ink);font-size:1.6rem}.flight-segment+.flight-segment{border-top:1px dashed #b78a3573;margin-top:24px;padding-top:24px}.flight-title{grid-template-columns:1fr auto auto 1fr;justify-content:center;align-items:center;gap:12px;display:grid}.flight-title h3{margin:0;font-size:clamp(1.6rem,4vw,2.2rem)}.flight-line{border-top:1px solid #b78a35a6}.flight-icon{color:var(--gold-dark);border:1px solid #85601f8c;border-radius:50%;place-items:center;width:52px;height:52px;font-size:1.25rem;display:grid}.flight-date{color:var(--gold-dark);text-align:center;margin:12px 0 22px;font-size:1.25rem;font-weight:800}.flight-grid{grid-template-columns:1fr minmax(170px,1.2fr) 1fr;align-items:center;gap:14px;display:grid}.flight-city{justify-items:center;gap:4px;display:grid}.flight-city strong{font-size:clamp(1.4rem,4vw,2rem)}.flight-city span{color:var(--gold-dark);font-weight:800}.flight-city b{direction:ltr;font-size:clamp(1.55rem,5vw,2.35rem)}.flight-middle{color:var(--muted);text-align:center;justify-items:center;gap:8px;display:grid}.flight-middle strong{color:var(--gold-dark)}.route-track{border-top:1px solid #85601f73;width:min(220px,100%);position:relative}.route-track span{background:var(--paper-strong);color:var(--gold-dark);padding:0 8px;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.flight-notes{color:var(--muted);text-align:center;margin:16px 0 0}.travel-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px;display:grid}.travel-info-card{background:#fffdf8c7;border:1px solid #b78a3547;border-radius:20px;grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:150px;padding:18px;display:grid}.travel-info-icon{color:var(--gold-dark);border:1px solid #b78a3561;border-radius:50%;justify-content:center;align-items:center;width:68px;height:68px;font-size:.82rem;font-weight:900;display:inline-flex}.travel-info-card h3{color:var(--ink);margin:0 0 6px;font-size:clamp(1.25rem,3.8vw,1.7rem)}.travel-info-card p{color:var(--muted);margin:0;font-size:clamp(.98rem,3vw,1.15rem);line-height:1.7}.content-frame{text-align:center;border-radius:30px;flex-direction:column;align-items:center;height:70vh;margin-bottom:18px;padding:clamp(20px,5vw,40px);display:flex;position:relative;overflow:hidden}.content-frame:before,.content-frame:after{content:"";border:1px solid #b78a3533;width:120px;height:120px;position:absolute;transform:rotate(45deg)}.content-frame:before{top:-74px;right:-46px}.content-frame:after{bottom:-82px;left:-46px}.section-label{color:var(--gold-dark);margin-bottom:0;font-weight:800}.dhikr-meta{flex-wrap:wrap;flex-shrink:0;justify-content:center;align-items:center;gap:10px;width:100%;margin-bottom:12px;display:flex}.dhikr-index{color:var(--muted);border:1px solid #b78a3557;border-radius:999px;padding:4px 11px;font-size:.86rem}.dhikr-text{overflow-wrap:anywhere;width:100%;max-width:760px;margin:0;font-size:clamp(1.65rem,5vw,3rem);line-height:1.75}.dhikr-source{color:var(--muted);margin:18px 0 0;font-size:1rem}.dhikr-body{flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;min-height:0;display:flex;overflow:hidden auto}.dhikr-font-controls{gap:6px;display:flex}.dhikr-font-controls button{width:32px;height:32px;color:var(--gold-dark);background:#fff8e7;border:1px solid #b78a3566;border-radius:50%;justify-content:center;align-items:center;min-height:0;padding:0;font-size:1.2rem;font-weight:800;display:flex}.dhikr-bar{flex-shrink:0;justify-content:center;align-items:center;gap:8px;width:100%;margin-top:auto;padding-top:14px;display:flex}.dhikr-bar button{color:#fff;background:linear-gradient(#b78a35,#85601f);border:0;border-radius:999px;min-height:42px;padding:0 16px;font-weight:800;box-shadow:0 10px 22px #85601f2e}.dhikr-bar .secondary-dhikr{color:var(--ink);box-shadow:none;background:#fff8e7;border:1px solid #85601f61}.feedback button{color:#fff;background:linear-gradient(#b78a35,#85601f);border:0;border-radius:999px;min-height:44px;padding:0 18px;font-weight:800;box-shadow:0 10px 22px #85601f2e}.dots{display:none}.dots button{width:9px;height:9px;min-height:0;box-shadow:none;background:#b78a3547;border-radius:999px;padding:0}.dots button.active{background:var(--gold-dark);width:24px}.fullscreen-tool{color:var(--ink);z-index:50;background:linear-gradient(#fffdf8f5,#fbf7effa),url(/assets/makkah-reference.jpg) bottom/min(760px,130vw) no-repeat;grid-template-rows:auto auto 1fr auto;min-width:320px;display:grid;position:fixed;inset:0;overflow:hidden}.tool-header,.tool-footer{z-index:2;background:#fffdf8f5;border-color:#b78a3552;position:relative}.tool-header{min-height:66px;padding:max(12px, env(safe-area-inset-top)) 14px 12px;border-bottom:1px solid #b78a3552;grid-template-columns:auto 1fr;align-items:center;gap:10px;display:grid}.tool-header h2{text-align:center;margin:0;font-size:1.2rem}.tool-header button,.tool-footer button,.tool-body button,.tool-tabs button{border:0;border-radius:999px;min-height:44px;padding:0 16px;font-weight:900}.tool-header button,.tool-footer button,.tool-body button{color:#fff;background:linear-gradient(#b78a35,#85601f)}.tool-tabs{scrollbar-width:none;gap:8px;padding:10px 14px;display:flex;overflow-x:auto}.tool-tabs button{color:var(--ink);background:#fff8e7;border:1px solid #b78a3557;flex:none}.tool-tabs button.active{background:var(--gold-dark);color:#fff}.tool-body{text-align:center;padding:22px 18px 24px;overflow-y:auto}.dhikr-full-body{align-content:center;justify-items:center;display:grid}.dhikr-full-text{overflow-wrap:anywhere;max-width:900px;margin:0;font-size:clamp(1.55rem,7vw,3.4rem);line-height:1.9}.tool-footer{padding:12px 14px max(12px, env(safe-area-inset-bottom));border-top:1px solid #b78a3552;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;display:grid}.tool-footer button:disabled{opacity:.45}.counter-button,.step-counter{color:var(--ink);text-align:center;direction:ltr;background:#fff8e7;border:1px solid #85601f5c;border-radius:999px;min-width:86px;padding:12px 14px;font-weight:900}.umrah-intro,.umrah-step-body{align-content:center;justify-items:center;gap:16px;display:grid}.umrah-intro h3,.umrah-step-body h3{margin:0;font-size:clamp(1.7rem,7vw,3.2rem)}.umrah-intro p,.umrah-step-body p{max-width:760px;margin:0;font-size:clamp(1.05rem,4.3vw,1.55rem);line-height:1.9}.umrah-counter{justify-items:center;gap:12px;width:min(100%,620px);display:grid}.umrah-count-display{color:#fff;direction:ltr;background:linear-gradient(#b78a35,#85601f);border-radius:999px;place-items:center;min-width:min(78vw,360px);min-height:108px;font-size:clamp(2rem,11vw,4.8rem);display:inline-grid}.active-round-time{color:var(--gold-dark);direction:ltr;background:#fffdf8e6;border:1px solid #b78a3552;border-radius:999px;padding:10px 16px;font-weight:900}.round-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.round-actions .start-round{color:var(--ink);background:#fff8e7;border:1px solid #85601f47;min-height:38px;padding:0 13px;font-size:.92rem}.umrah-counter .secondary-dhikr{color:var(--ink);background:#fff8e7;border:1px solid #85601f47}.round-progress{flex-direction:column;align-items:center;gap:10px;width:100%;display:flex}.round-dots{justify-content:center;gap:8px;display:flex}.round-dot{width:36px;height:36px;color:var(--muted);background:#fffdf8cc;border:2px solid #b78a3559;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.round-dot.filled{color:#fff;background:linear-gradient(#b78a35,#85601f);border-color:#0000}.round-summary-toggle{color:var(--muted);background:#fff8e7b8;border:1px solid #b78a3547;border-radius:999px;min-height:0;padding:6px 16px;font-size:.9rem;font-weight:600}.round-detail-list{flex-direction:column;gap:4px;width:100%;max-width:320px;display:flex}.round-detail-row{color:var(--muted);border-bottom:1px solid #b78a3526;justify-content:space-between;padding:4px 12px;font-size:.85rem;display:flex}.umrah-duas{text-align:center;background:#fffdf8d1;border:1px solid #b78a3552;border-radius:20px;gap:10px;max-width:760px;padding:16px;display:grid}.umrah-duas strong{color:var(--gold-dark);font-size:1.05rem}.umrah-duas p{color:var(--ink);font-size:clamp(1rem,3.7vw,1.35rem);line-height:1.8}.umrah-finish-summary{background:linear-gradient(#fff8e7f5,#fffdf8e6);border:1px solid #85601f57;border-radius:24px;justify-items:center;gap:16px;width:100%;max-width:760px;padding:20px;display:grid;box-shadow:0 14px 30px #684a1f1a}.umrah-finish-summary h3{color:var(--gold-dark);font-size:clamp(1.9rem,7vw,3.8rem)}.umrah-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;display:grid}.umrah-summary-grid span{color:var(--muted);background:#fffdf8db;border:1px solid #b78a3542;border-radius:16px;gap:6px;padding:12px;display:grid}.umrah-summary-grid strong{color:var(--ink);direction:ltr;font-size:1.18rem}.khatmah-notice{background:linear-gradient(#fff8e7f5,#fffdf8eb);border:1px solid #85601f6b;border-radius:18px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;margin-bottom:14px;padding:14px;display:grid;box-shadow:0 12px 28px #684a1f1a}.khatmah-notice div{gap:3px;display:grid}.khatmah-notice span{color:var(--gold-dark);font-weight:900}.khatmah-notice strong{font-size:1rem}.khatmah-notice button,.khatmah-picker button,.khatmah-complete button,.khatmah-reminder-actions button{color:#fff;background:linear-gradient(#b78a35,#85601f);border:0;border-radius:999px;min-height:42px;padding:0 16px;font-weight:900}.khatmah-notice .secondary-dhikr,.khatmah-reminder-actions .secondary-dhikr{color:var(--ink);background:#fff8e7;border:1px solid #85601f47}.khatmah-tool{grid-template-rows:auto 1fr}.khatmah-body{align-content:start;gap:16px;display:grid}.khatmah-summary,.khatmah-picker,.khatmah-complete,.khatmah-reminder{background:#fffdf8e6;border:1px solid #b78a3552;border-radius:22px;padding:18px;box-shadow:0 12px 28px #684a1f14}.khatmah-summary{justify-items:center;gap:8px;display:grid}.khatmah-summary span,.khatmah-reminder h3{color:var(--gold-dark);font-weight:900}.khatmah-summary h3,.khatmah-complete h3,.khatmah-reminder h3{margin:0}.khatmah-summary p,.khatmah-summary small,.khatmah-complete p{color:var(--muted);margin:0}.khatmah-progress{background:#b78a3529;border-radius:999px;width:min(100%,520px);height:12px;overflow:hidden}.khatmah-progress span{background:linear-gradient(90deg,#85601f,#d9b45f);height:100%;display:block}.khatmah-picker,.khatmah-reminder{gap:12px;display:grid}.khatmah-picker label,.khatmah-reminder label{text-align:start;gap:6px;display:grid}.khatmah-picker label span,.khatmah-reminder label span{color:var(--muted);font-weight:800}.khatmah-picker select,.khatmah-reminder input{color:var(--ink);background:#fffdf8f5;border:1px solid #b78a3557;border-radius:16px;outline:none;min-height:48px;padding:0 12px}.khatmah-check{align-items:center;gap:10px;display:flex!important}.khatmah-check input{width:auto}.khatmah-reminder-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.announcement{background:linear-gradient(135deg,#fffaebf5,#f4d9926b),#fffdf8f0;border-radius:28px;flex-direction:column;justify-content:center;min-height:220px;margin-bottom:22px;padding:clamp(26px,6vw,54px);display:flex}.announcement span{color:var(--gold-dark);margin-bottom:10px;font-weight:900}.announcement h2{overflow-wrap:anywhere;margin:0 0 12px;font-size:clamp(2rem,7vw,4rem);line-height:1.25}.announcement p{color:#4d402c;max-width:820px;margin:0;font-size:clamp(1.1rem,3.7vw,1.8rem);line-height:1.8}.section-heading{justify-content:space-between;align-items:center;margin:26px 0 12px;display:flex}.section-heading h2{margin:0;font-size:clamp(1.4rem,5vw,2rem)}.poll-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.poll-card{border-radius:24px;padding:20px}.poll-card h3{margin:0 0 14px;font-size:1.2rem;line-height:1.55}.poll-options{gap:10px;display:grid}.poll-option{color:var(--ink);text-align:start;background:#fffcf4e6;border:1px solid #b78a3538;border-radius:17px;padding:12px}.poll-option.is-selected{background:#fff8e7;border-color:#85601fb8;box-shadow:inset 0 0 0 2px #b78a3538}.option-topline{justify-content:space-between;gap:10px;margin-bottom:8px;display:flex}.result-track{background:#b78a3529;border-radius:999px;height:8px;display:block;overflow:hidden}.result-track span{border-radius:inherit;background:linear-gradient(90deg,#85601f,#d9b45f);height:100%;display:block}.vote-count,.vote-hint,.form-status{color:var(--muted);margin:12px 0 0}.today-schedule{border-radius:24px;margin-top:22px;padding:20px}.today-schedule .section-heading span{color:var(--muted);font-weight:700}.schedule-list{gap:10px;display:grid}.schedule-item{border:1px solid #b78a353d;border-radius:16px;grid-template-columns:92px 1fr;align-items:start;gap:12px;padding:13px;display:grid}.schedule-item time{color:var(--gold-dark);direction:ltr;font-size:1.2rem;font-weight:900}.schedule-item div{gap:4px;display:grid}.schedule-item span,.schedule-item p{color:var(--muted);margin:0}.feedback{border-radius:24px;margin-top:22px;padding:20px}.feedback form{gap:12px;display:grid}.feedback input,.feedback textarea{width:100%;color:var(--ink);background:#fffdf8eb;border:1px solid #b78a3557;border-radius:18px;outline:none;padding:14px 16px}.feedback textarea{resize:vertical;min-height:132px}.feedback input:focus,.feedback textarea:focus{border-color:var(--gold-dark);box-shadow:0 0 0 4px var(--gold-soft)}.feedback button{justify-self:start;min-width:170px}.form-status.error,.loading.error{color:#9c2f24}.loading{border:1px solid var(--line);text-align:center;background:#fffdf8eb;border-radius:22px;padding:24px}@media (width<=760px){.page-content{width:calc(100vw - 20px);padding-top:14px}.site-header{text-align:center;display:block}.site-header time{margin-top:4px;font-size:.86rem;display:block}.prayer-strip{grid-template-columns:repeat(2,1fr)}.feature-actions{gap:8px}.feature-actions button{border-radius:14px;min-height:48px;font-size:.9rem}.prayer-time{border-radius:15px;min-height:72px}.content-frame{border-radius:24px;min-height:310px}.dhikr-controls{flex-wrap:wrap;justify-content:center;gap:8px;width:100%}.dhikr-controls button{padding:0 13px}.announcement{border-radius:24px;min-height:260px}.travel-hero{min-height:150px}.flight-grid{grid-template-columns:1fr}.flight-middle{order:2}.travel-meta{width:100%;display:flex}.travel-info-grid{grid-template-columns:1fr}.travel-info-card{text-align:center;grid-template-columns:1fr;justify-items:center}.poll-list,.schedule-item{grid-template-columns:1fr}.tool-header{min-height:60px}.tool-footer{grid-template-columns:1fr auto 1fr;gap:7px;padding-inline:10px}.tool-footer button{padding:0 10px}.khatmah-notice{grid-template-columns:1fr}.khatmah-notice button{width:100%}}@media (width<=420px){.prayer-strip{gap:6px}.prayer-time{min-height:66px;padding:8px 4px}.prayer-time span{font-size:.78rem}.dhikr-text{max-width:100%;font-size:1.28rem;line-height:1.85}.content-frame{padding-inline:20px}.feature-actions{gap:6px}.feature-actions button{padding-inline:6px;font-size:.82rem}}
