.prayers-v2-page { overflow-x: hidden; background: var(--makki-white); }
.prayers-v2-page main { overflow: clip; }
.prayers-v2-page :where(a, button, [tabindex="0"]):focus-visible { outline: 3px solid var(--makki-gold); outline-offset: 3px; }

.prayers-v2-hero { position: relative; overflow: hidden; padding-block: clamp(2.8rem,5vw,4.6rem); background: linear-gradient(115deg,rgba(255,255,255,.46),transparent 58%),var(--makki-ivory); border-bottom: var(--makki-border); }
.prayers-v2-hero::after { position: absolute; right: -4rem; bottom: -8rem; width: 19rem; height: 19rem; border: 1px solid rgba(198,161,91,.22); border-radius: 50%; content: ""; }
.prayers-v2-hero__inner { position: relative; z-index: 1; display: grid; align-items: center; grid-template-columns: minmax(0,1fr) 170px; gap: clamp(2rem,5vw,6rem); }
.prayers-v2-breadcrumb { display: flex; align-items: center; gap: .6rem; margin-bottom: 1.25rem; color: var(--makki-sage); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.prayers-v2-breadcrumb a { color: var(--makki-navy); text-decoration: none; }
.prayers-v2-breadcrumb a:hover { color: var(--makki-wood); }
.prayers-v2-hero h1 { margin: 0; font-size: clamp(2.8rem,6vw,5rem); letter-spacing: -.035em; }
.prayers-v2-hero p { max-width: 650px; margin: 1rem 0 0; color: var(--makki-sage); font-size: clamp(1rem,1.5vw,1.12rem); }
.prayers-v2-hero__arch { position: relative; width: 145px; height: 165px; justify-self: end; border: 1px solid rgba(23,59,87,.2); border-radius: 80px 80px 8px 8px; }
.prayers-v2-hero__arch::before { position: absolute; inset: 12px; border: 1px solid rgba(198,161,91,.52); border-radius: 68px 68px 4px 4px; content: ""; }
.prayers-v2-hero__arch::after { position: absolute; right: 50%; bottom: -20px; width: 1px; height: 85px; background: var(--makki-gold); content: ""; opacity: .6; }
.prayers-v2-hero__arch span { position: absolute; top: 46px; left: 50%; width: 42px; height: 42px; border: 1px solid rgba(23,59,87,.18); transform: translateX(-50%) rotate(45deg); }

.prayers-v2-today { padding-block: clamp(3.5rem,6vw,6.5rem); }
.prayers-v2-today__panel { padding: clamp(1.25rem,3.5vw,3.25rem); background: var(--makki-ivory); border: var(--makki-border); border-radius: var(--makki-radius-lg); box-shadow: var(--makki-shadow-md); }
.prayers-v2-today__heading { display: grid; align-items: stretch; grid-template-columns: minmax(0,1fr) minmax(280px,390px); gap: clamp(1.5rem,4vw,4rem); }
.prayers-v2-today__heading h2,.prayers-v2-section-heading h2,.prayers-v2-timetable__heading h2,.prayers-v2-resources__panel h2 { margin: 0; font-size: clamp(2rem,4vw,3.4rem); }
.prayers-v2-date { display: flex; align-items: center; gap: .65rem; margin: .8rem 0 0; color: var(--makki-sage); font-size: .95rem; font-weight: 600; flex-wrap: wrap; }
.prayers-v2-next { position: relative; display: flex; min-height: 150px; justify-content: center; padding: 1.5rem 1.75rem; overflow: hidden; background: var(--makki-navy-deep); border-radius: var(--makki-radius-md); color: var(--makki-white); flex-direction: column; }
.prayers-v2-next::after { position: absolute; top: -72px; right: -38px; width: 150px; height: 150px; border: 1px solid rgba(198,161,91,.25); border-radius: 50%; content: ""; }
.prayers-v2-next__label { color: var(--makki-gold); font-size: .7rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.prayers-v2-next__prayer { display: flex; align-items: baseline; gap: .55rem; margin-top: .3rem; font-size: clamp(1.2rem,2vw,1.55rem); }
.prayers-v2-next__prayer strong { color: var(--makki-white); font-family: "El Messiri",serif; font-size: clamp(1.8rem,3vw,2.5rem); }
.prayers-v2-next__countdown { margin: .25rem 0 0; color: rgba(255,255,255,.72); font-size: .82rem; font-variant-numeric: tabular-nums; }

.prayers-v2-grid { display: grid; margin-top: clamp(2rem,4vw,3rem); grid-template-columns: repeat(5,minmax(0,1fr)); gap: .75rem; }
.prayers-v2-card { min-width: 0; padding: 1.25rem; background: var(--makki-white); border: var(--makki-border); border-radius: var(--makki-radius-md); }
.prayers-v2-card.is-next { background: rgba(198,161,91,.11); border-color: var(--makki-gold); box-shadow: inset 0 3px 0 var(--makki-gold); }
.prayers-v2-card__heading { min-height: 66px; }
.prayers-v2-card h3 { margin: 0; font-size: 1.45rem; }
.prayers-v2-card__heading span { display: inline-flex; margin-top: .25rem; padding: .15rem .45rem; background: var(--makki-gold); border-radius: 999px; color: var(--makki-navy-deep); font-size: .58rem; font-weight: 800; letter-spacing: .08em; line-height: 1.4; text-transform: uppercase; white-space: nowrap; }
.prayers-v2-card dl,.prayers-v2-card dd { margin: 0; }
.prayers-v2-card dl { display: grid; gap: .6rem; }
.prayers-v2-card dl>div { display: flex; align-items: baseline; justify-content: space-between; gap: .5rem; padding-top: .65rem; border-top: 1px solid rgba(23,59,87,.1); }
.prayers-v2-card dt { color: var(--makki-sage); font-size: .67rem; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.prayers-v2-card dd { color: var(--makki-navy-deep); font-size: clamp(.82rem,1.05vw,.94rem); font-weight: 800; white-space: nowrap; }
.prayers-v2-card dl>div:last-child dd { color: var(--makki-wood); }
.prayers-v2-card.is-single dl { grid-template-columns: 1fr; }
.prayers-v2-extras { display: grid; margin-top: .75rem; padding: 1.1rem 1.25rem; background: rgba(221,210,180,.4); border: 1px solid rgba(23,59,87,.1); border-radius: var(--makki-radius-md); grid-template-columns: repeat(auto-fit,minmax(135px,1fr)); }
.prayers-v2-extras>div { display: flex; min-width: 0; align-items: center; justify-content: center; gap: .65rem; padding: .35rem 1rem; border-right: 1px solid rgba(23,59,87,.12); }
.prayers-v2-extras>div:last-child { border-right: 0; }
.prayers-v2-extras span { color: var(--makki-sage); font-size: .72rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.prayers-v2-extras strong { color: var(--makki-navy-deep); font-size: .9rem; white-space: nowrap; }

.prayers-v2-salah { position: relative; padding-block: clamp(4rem,7vw,6.5rem); overflow: hidden; background: linear-gradient(120deg,rgba(255,255,255,.52),transparent 58%),var(--makki-sand); }
.prayers-v2-salah::before,.prayers-v2-salah::after { position: absolute; width: 220px; height: 250px; border: 1px solid rgba(139,106,80,.17); border-radius: 120px 120px 8px 8px; content: ""; }
.prayers-v2-salah::before { top: -125px; left: clamp(-140px,-8vw,-70px); transform: rotate(8deg); }
.prayers-v2-salah::after { right: clamp(-140px,-8vw,-70px); bottom: -145px; transform: rotate(-8deg); }
.prayers-v2-salah__inner { position: relative; z-index: 1; max-width: 980px; text-align: center; }
.prayers-v2-salah__inner .v2-eyebrow { justify-content: center; }
.prayers-v2-salah__inner h2 { margin: 0; font-size: clamp(2.2rem,4vw,3.25rem); }
.prayers-v2-salah__inner blockquote { margin: clamp(2rem,4vw,3rem) 0 0; }
.prayers-v2-salah__arabic { position: relative; left: 50%; width: min(1200px,calc(100vw - var(--makki-gutter) - var(--makki-gutter))); margin: 0; color: var(--makki-navy-deep); font-size: clamp(2rem,4.2vw,3.65rem); font-weight: 500; line-height: 1.8; text-align: center; text-wrap: balance; transform: translateX(-50%); }
.prayers-v2-salah__inner cite { display: inline-flex; align-items: center; gap: .75rem; margin-top: 1.2rem; color: var(--makki-wood); font-size: .78rem; font-style: normal; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.prayers-v2-salah__inner cite::before,.prayers-v2-salah__inner cite::after { width: 2rem; height: 1px; background: var(--makki-gold); content: ""; }
.prayers-v2-salah__meaning { position: relative; left: 50%; width: min(1000px,calc(100vw - var(--makki-gutter) - var(--makki-gutter))); margin: 1.1rem 0 0; color: var(--makki-charcoal); font-size: clamp(1rem,1.4vw,1.1rem); line-height: 1.8; text-align: center; transform: translateX(-50%); }
.prayers-v2-salah__ornament { width: 52px; height: 58px; margin: 0 auto 1.25rem; border: 1px solid rgba(23,59,87,.3); border-radius: 28px 28px 4px 4px; }
.prayers-v2-salah__ornament::before { display: block; width: 30px; height: 36px; margin: 10px auto; border: 1px solid rgba(198,161,91,.78); border-radius: 18px 18px 2px 2px; content: ""; }

.prayers-v2-actions { position: relative; padding-block: clamp(3.25rem,5vw,5rem); overflow: hidden; background: var(--makki-navy-deep); }
.prayers-v2-actions::before { position: absolute; top: clamp(-5rem,-5vw,-2rem); right: clamp(-7rem,-4vw,-3rem); width: clamp(16rem,24vw,23rem); height: clamp(22rem,32vw,31rem); border: 1px solid rgba(198,161,91,.15); border-radius: 50% 50% 8px 8px; content: ""; pointer-events: none; transform: rotate(5deg); }
.prayers-v2-actions::after { position: absolute; bottom: clamp(-16rem,-13vw,-10rem); left: clamp(-12rem,-7vw,-6rem); width: clamp(23rem,34vw,34rem); height: clamp(23rem,34vw,34rem); border: 1px solid rgba(221,210,180,.09); border-radius: 50%; content: ""; pointer-events: none; }
.prayers-v2-actions>.v2-container { position: relative; z-index: 1; }
.prayers-v2-actions .v2-eyebrow { color: var(--makki-gold); }
.prayers-v2-section-heading h2 { color: var(--makki-white); }
.prayers-v2-actions__grid { display: grid; width: min(100%,1050px); margin: 2rem auto 0; grid-template-columns: 1.12fr 1fr; gap: 1rem; }
.prayers-v2-action { display: flex; min-width: 0; min-height: 250px; padding: clamp(1.35rem,2.5vw,2rem); background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.14); border-radius: var(--makki-radius-md); color: rgba(255,255,255,.74); text-decoration: none; transition: background-color var(--makki-transition),border-color var(--makki-transition),transform var(--makki-transition); flex-direction: column; }
a.prayers-v2-action:hover { background: rgba(255,255,255,.09); border-color: rgba(198,161,91,.6); color: rgba(255,255,255,.86); transform: translateY(-2px); }
.prayers-v2-action--primary { background: var(--makki-ivory); border-color: var(--makki-ivory); color: var(--makki-sage); }
.prayers-v2-action--seasonal { background: rgba(221,210,180,.08); }
.prayers-v2-action>i { display: grid; width: 45px; height: 45px; margin-bottom: 1.4rem; place-items: center; border: 1px solid rgba(198,161,91,.55); border-radius: 50%; color: var(--makki-gold); }
.prayers-v2-action--primary>i { background: var(--makki-navy); }
.prayers-v2-action div>span { display: block; margin-bottom: .25rem; color: var(--makki-gold); font-size: .67rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.prayers-v2-action h3 { margin: 0; color: var(--makki-white); font-size: clamp(1.35rem,2vw,1.75rem); }
.prayers-v2-action--primary h3 { color: var(--makki-navy-deep); }
.prayers-v2-action p { margin: .55rem 0 1.35rem; font-size: .88rem; line-height: 1.65; }
.prayers-v2-action .v2-btn,.prayers-v2-action__link { margin-top: auto; align-self: flex-start; }
.prayers-v2-action__link { display: inline-flex; align-items: center; gap: .45rem; color: var(--makki-white); font-size: .82rem; font-weight: 700; }
.prayers-v2-action__link i { color: var(--makki-gold); font-size: .72rem; }
.prayers-v2-action button:disabled { cursor: not-allowed; opacity: .55; }

.prayers-v2-timetable { padding-block: clamp(3.5rem,7vw,7rem); background: var(--makki-ivory); }
.prayers-v2-timetable__heading { display: flex; align-items: end; justify-content: space-between; gap: 2rem; margin-bottom: 2rem; }
.prayers-v2-timetable__heading p { margin: .5rem 0 0; color: var(--makki-sage); font-size: .92rem; }
.prayers-v2-key { display: flex; gap: 1rem; color: var(--makki-sage); font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.prayers-v2-key span { display: inline-flex; align-items: center; gap: .4rem; }
.prayers-v2-key i { width: 10px; height: 10px; border-radius: 50%; }
.prayers-v2-key .is-begins { background: var(--makki-sand); }
.prayers-v2-key .is-jamaat { background: var(--makki-navy); }
.prayers-v2-table-shell { max-width: 100%; padding: .7rem; background: var(--makki-white); border: var(--makki-border); border-radius: var(--makki-radius-lg); box-shadow: var(--makki-shadow-sm); }
.prayers-v2-table-scroll { max-width: 100%; overflow-x: auto; border-radius: var(--makki-radius-md); overscroll-behavior-inline: contain; scrollbar-color: var(--makki-gold) rgba(23,59,87,.08); scrollbar-width: thin; }
.prayers-v2-table-scroll::-webkit-scrollbar { height: 10px; }
.prayers-v2-table-scroll::-webkit-scrollbar-track { background: rgba(23,59,87,.08); }
.prayers-v2-table-scroll::-webkit-scrollbar-thumb { background: var(--makki-gold); border-radius: 999px; }
.prayers-v2-table-scroll table { width: 100%; min-width: 1080px; margin: 0; border-collapse: separate; border-spacing: 0; color: var(--makki-charcoal); font-size: .76rem; font-variant-numeric: tabular-nums; line-height: 1.35; }
.prayers-v2-table-scroll th,.prayers-v2-table-scroll td { padding: .8rem .62rem; border-right: 1px solid rgba(23,59,87,.07); border-bottom: 1px solid rgba(23,59,87,.09); text-align: center; white-space: nowrap; }
.prayers-v2-table-scroll thead th { position: sticky; z-index: 3; top: 0; background: var(--makki-navy-deep); color: var(--makki-white); font-weight: 700; }
.prayers-v2-table-scroll thead tr:first-child th { padding-block: .9rem; color: var(--makki-gold); font-family: "El Messiri",serif; font-size: .9rem; }
.prayers-v2-table-scroll thead tr:nth-child(2) th { top: 45px; background: var(--makki-navy); font-size: .66rem; letter-spacing: .04em; text-transform: uppercase; }
.prayers-v2-table-scroll tbody tr:nth-child(even) { background: rgba(248,245,237,.72); }
.prayers-v2-table-scroll tbody th { position: sticky; z-index: 2; left: 0; background: var(--makki-white); color: var(--makki-navy-deep); font-weight: 800; }
.prayers-v2-table-scroll tbody tr:nth-child(even) th { background: #faf8f2; }
.prayers-v2-table-scroll tbody th span { display: inline-block; margin-left: .35rem; padding: .1rem .35rem; background: var(--makki-gold); border-radius: 999px; color: var(--makki-navy-deep); font-size: .52rem; text-transform: uppercase; }
.prayers-v2-table-scroll td.is-begins { color: var(--makki-sage); }
.prayers-v2-table-scroll td.is-jamaat { color: var(--makki-navy-deep); font-weight: 800; }
.prayers-v2-table-scroll td.has-change { background: rgba(198,161,91,.18); box-shadow: inset 0 -2px 0 var(--makki-gold); }
.prayers-v2-table-scroll tr.is-today>* { background: var(--makki-navy)!important; border-color: rgba(255,255,255,.14); color: var(--makki-white)!important; }
.prayers-v2-table-scroll tr.is-today>th { color: var(--makki-gold)!important; }
.prayers-v2-scroll-hint { display: none; margin: 0 0 .65rem; color: var(--makki-sage); font-size: .7rem; font-weight: 650; text-align: center; }
.prayers-v2-scroll-hint i { margin-right: .35rem; color: var(--makki-gold); }

.prayers-v2-resources { padding-block: clamp(2.5rem,4.5vw,4rem); }
.prayers-v2-resources__panel { position: relative; display: grid; align-items: center; padding: clamp(1.65rem,3vw,2.5rem); overflow: hidden; background: var(--makki-navy); border-radius: var(--makki-radius-lg); box-shadow: inset 0 1px 0 rgba(255,255,255,.06); grid-template-columns: minmax(0,1fr) auto; gap: clamp(1.5rem,3vw,3rem); }
.prayers-v2-resources__panel::before { position: absolute; top: -7rem; right: clamp(-3.5rem,-2vw,-1.5rem); width: clamp(12rem,18vw,16rem); height: clamp(17rem,24vw,22rem); border: 1px solid rgba(198,161,91,.17); border-radius: 50% 50% 6px 6px; content: ""; pointer-events: none; transform: rotate(6deg); }
.prayers-v2-resources__panel::after { position: absolute; bottom: -10rem; left: -8rem; width: 16rem; height: 16rem; border: 1px solid rgba(221,210,180,.08); border-radius: 50%; content: ""; pointer-events: none; }
.prayers-v2-resources__panel>* { position: relative; z-index: 1; }
.prayers-v2-resources__panel h2,.prayers-v2-resources__panel p { color: var(--makki-white); }
.prayers-v2-resources__panel p { max-width: 670px; margin: .65rem 0 0; color: rgba(255,255,255,.72); font-size: .92rem; }
.prayers-v2-resources__panel .v2-eyebrow { color: var(--makki-gold); }
.prayers-v2-resources__actions { display: flex; }
.prayers-v2-unavailable { margin-top: 2rem; padding: 1.4rem; background: var(--makki-white); border: var(--makki-border); border-radius: var(--makki-radius-md); color: var(--makki-sage); text-align: center; }
.prayers-v2-unavailable p { margin: 0; }
.prayers-v2-visually-hidden { position: absolute!important; width: 1px!important; height: 1px!important; padding: 0!important; overflow: hidden!important; clip: rect(0,0,0,0)!important; white-space: nowrap!important; border: 0!important; }

@media (min-width:1024px) { .prayers-v2-salah__arabic{font-size:clamp(2.2rem,3.2vw,3rem);text-wrap:nowrap;white-space:nowrap}.prayers-v2-salah__meaning{white-space:nowrap} }
@media (max-width:1180px) { .prayers-v2-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:900px) { .prayers-v2-today__heading{grid-template-columns:1fr}.prayers-v2-next{min-height:135px}.prayers-v2-scroll-hint{display:block} }
@media (max-width:768px) {
    .prayers-v2-next__label,
    .prayers-v2-card__heading span,
    .prayers-v2-card dt,
    .prayers-v2-extras span,
    .prayers-v2-action div>span,
    .prayers-v2-key,
    .prayers-v2-scroll-hint,
    .prayers-v2-table-scroll thead tr:nth-child(2) th {
        font-size: .75rem;
        line-height: 1.4;
    }
}
@media (max-width:767px) {
    .prayers-v2-hero__inner{grid-template-columns:minmax(0,1fr) 90px;gap:1rem}.prayers-v2-hero__arch{width:80px;height:105px}.prayers-v2-hero__arch span{top:35px;width:26px;height:26px}
    .prayers-v2-grid{grid-template-columns:1fr}.prayers-v2-card{display:grid;align-items:center;padding:1rem;grid-template-columns:minmax(100px,.8fr) minmax(0,1.5fr);gap:1rem}.prayers-v2-card__heading{min-height:0}.prayers-v2-card dl{grid-template-columns:1fr 1fr;gap:.7rem}.prayers-v2-card.is-single dl{grid-template-columns:1fr}.prayers-v2-card dl>div{display:block;padding:0 0 0 .7rem;border-top:0;border-left:1px solid rgba(23,59,87,.12)}.prayers-v2-card dd{margin-top:.15rem}
    .prayers-v2-extras{grid-template-columns:repeat(2,minmax(0,1fr))}.prayers-v2-extras>div{justify-content:space-between;border-right:0}.prayers-v2-extras>div:nth-child(odd){border-right:1px solid rgba(23,59,87,.12)}.prayers-v2-timetable__heading{align-items:flex-start;flex-direction:column}.prayers-v2-resources__panel{grid-template-columns:1fr}.prayers-v2-resources__panel::before{top:auto;right:-4.5rem;bottom:-8rem;width:12rem;height:16rem;opacity:.7}.prayers-v2-resources__panel::after{display:none}.prayers-v2-resources__actions{align-items:stretch;flex-direction:column}.prayers-v2-resources__actions .v2-btn{width:100%}
}
@media (max-width:560px) { .prayers-v2-hero__inner{grid-template-columns:1fr}.prayers-v2-hero__arch{display:none}.prayers-v2-today__panel{padding:1rem;border-radius:var(--makki-radius-md)}.prayers-v2-next{padding:1.2rem}.prayers-v2-salah__arabic{font-size:clamp(1.85rem,8vw,2.35rem);line-height:1.9}.prayers-v2-salah__meaning{line-height:1.75}.prayers-v2-actions::before{top:auto;right:-8rem;bottom:-7rem;width:16rem;height:21rem;opacity:.65}.prayers-v2-actions::after{display:none}.prayers-v2-actions__grid{grid-template-columns:1fr}.prayers-v2-action{min-height:235px}.prayers-v2-table-shell{padding:.45rem} }
@media (max-width:400px) { .prayers-v2-date{display:grid;gap:.15rem}.prayers-v2-date>span[aria-hidden="true"]{display:none}.prayers-v2-card{grid-template-columns:minmax(90px,.72fr) minmax(0,1.4fr);gap:.5rem}.prayers-v2-card h3{font-size:1.25rem}.prayers-v2-card__heading span{padding-inline:.35rem;letter-spacing:.06em}.prayers-v2-card dl{gap:.35rem}.prayers-v2-card dl>div{padding-left:.45rem}.prayers-v2-card dd{font-size:.78rem}.prayers-v2-extras{grid-template-columns:1fr}.prayers-v2-extras>div,.prayers-v2-extras>div:nth-child(odd){border-right:0}.prayers-v2-extras>div+div{border-top:1px solid rgba(23,59,87,.1)} }
@media (prefers-reduced-motion:reduce) { .prayers-v2-action,.prayers-v2-page .v2-btn{transition:none} }
