:root{--g:#078653;--gd:#006444;--n:#0d3045;--m:#667976;--line:#e1ebe6;--shadow:0 18px 55px rgba(12,64,48,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Inter,system-ui,sans-serif;color:var(--n);background:#f7faf8}a{text-decoration:none;color:inherit}.btn-mymasjid{background:linear-gradient(135deg,var(--g),var(--gd));color:#fff;border:0;border-radius:999px;font-weight:750;padding:.72rem 1.25rem;box-shadow:0 8px 24px rgba(0,111,70,.18)}.btn-mymasjid:hover{background:#005f40;color:#fff}.mm-navbar{background:rgba(255,255,255,.95);border-bottom:1px solid rgba(9,91,63,.08);backdrop-filter:blur(16px)}.mm-navbar .container-xl{min-height:70px}.mm-logo{width:205px;height:58px;object-fit:contain;object-position:left}.mm-navbar .nav-link{display:flex;align-items:center;gap:.4rem;color:#304b59;font-size:.84rem;font-weight:650;padding:.58rem .78rem!important;border-radius:999px}.mm-navbar .nav-link.active,.mm-navbar .nav-link:hover{background:#edf7f1;color:#087a50}.mm-lang-switch{display:flex;background:#f0f4f2;border:1px solid #e4ebe7;border-radius:999px;padding:3px}.mm-lang-switch a{font-size:.72rem;font-weight:800;padding:.42rem .55rem;border-radius:999px;color:#687a74}.mm-lang-switch a.active{background:var(--g);color:#fff}
.mm-hero{padding:1.2rem 0 2.2rem;background:radial-gradient(circle at 12% 0,#e4f2eb,transparent 30%),linear-gradient(180deg,#f8fcfa,#f4f8f5)}.mm-hero-panel{position:relative;min-height:520px;overflow:hidden;border-radius:0 0 2rem 2rem;background:linear-gradient(105deg,#fafcf8 0%,#f8faf2 48%,#ceeBDD 100%);box-shadow:var(--shadow);border:1px solid #e2ece6}.mm-hero-copy{position:relative;z-index:4;max-width:560px;padding:4.3rem 2rem 3.2rem 3.6rem}.mm-location-chip{display:inline-flex;align-items:center;gap:.45rem;background:#fff;border:1px solid #dce9e3;color:#187552;border-radius:.7rem;padding:.52rem .72rem;font-size:.78rem;font-weight:700}.mm-hero h1{font-family:"DM Serif Display",Georgia,serif;font-size:clamp(3rem,5.7vw,5rem);line-height:.96;margin:1.5rem 0 1.2rem;color:#102f4b}.mm-hero h1 span{color:var(--g)}.mm-hero-copy>p{color:#304a56;font-size:1.02rem;line-height:1.78}.mm-outline-btn{border:1.5px solid #173f50;color:#173f50;border-radius:999px;font-weight:750;padding:.7rem 1.3rem;background:#fff}.mm-outline-btn:hover{background:#173f50;color:#fff}.mm-hero-mosque{position:absolute;right:-3%;bottom:-4%;width:60%;height:78%;display:flex;align-items:flex-end;background:radial-gradient(circle at 63% 45%,rgba(246,194,100,.42),transparent 28%),radial-gradient(circle at 65% 70%,rgba(7,134,83,.18),transparent 47%)}.mm-hero-mosque img{width:100%;height:100%;object-fit:contain;object-position:right bottom;filter:drop-shadow(0 20px 16px rgba(8,77,55,.18))}.mm-hero-quote{position:absolute;z-index:5;right:1.4rem;top:1.4rem;width:270px;padding:1.1rem;border-radius:1.1rem;background:rgba(255,255,255,.78);backdrop-filter:blur(14px);box-shadow:0 12px 35px rgba(10,60,45,.08);text-align:center}.mm-hero-quote i{color:#d9a243}.mm-hero-quote p{font-family:Georgia,serif;font-size:.86rem;line-height:1.55;margin:.35rem 0}.mm-hero-quote span{font-size:.68rem;color:#61766f}
.mm-prayer-card{position:relative;overflow:hidden;padding:1.65rem;border-radius:1.8rem;color:#fff;background:linear-gradient(150deg,#095d52,#004c43 47%,#003b36);box-shadow:0 22px 55px rgba(2,62,50,.18)}.mm-prayer-card:after{content:"";position:absolute;right:-5%;bottom:-15%;width:260px;height:220px;background:url('../images/mosque-line.svg') center/contain no-repeat;opacity:.09}.mm-prayer-card>*{position:relative;z-index:2}.mm-card-label{display:flex;gap:.45rem;font-size:.83rem;font-weight:800;color:#dff8ed}.mm-prayer-card h3{font-size:1.25rem;font-weight:800;margin:.3rem 0}.mm-prayer-card small,.mm-prayer-card p{color:rgba(255,255,255,.72)}.mm-jakim-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);border-radius:.55rem;padding:.35rem .5rem;font-size:.64rem;font-weight:800}.mm-prayer-date{display:flex;justify-content:space-between;margin:1.15rem 0 .75rem;padding-bottom:.7rem;border-bottom:1px solid rgba(255,255,255,.12);font-size:.77rem;color:#d8eee7}.mm-prayer-list>div{display:flex;justify-content:space-between;align-items:center;padding:.58rem .62rem;border-bottom:1px solid rgba(255,255,255,.075);border-radius:.55rem;font-size:.8rem}.mm-prayer-list span{display:flex;gap:.55rem;color:#d6ede5}.mm-prayer-list i{color:#8bd2b7}.mm-prayer-list .is-next{background:#dff4e4;color:#0d573e}.mm-prayer-list .is-next span,.mm-prayer-list .is-next i{color:#0d573e}.mm-prayer-source{font-size:.66rem;color:rgba(255,255,255,.62);margin-top:1rem}.mm-prayer-error,.mm-api-empty{padding:1rem;background:rgba(255,255,255,.08);border-radius:1rem}.mm-prayer-error{display:grid;gap:.4rem;text-align:center;margin-top:1rem}.mm-prayer-error span,.mm-api-empty span{font-size:.72rem;color:#c5ddd5}.mm-prayer-notice{margin-top:.8rem;background:rgba(245,187,65,.13);padding:.65rem;border-radius:.65rem;font-size:.7rem}.mm-prayer-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.55rem}.mm-prayer-time{text-align:center;padding:.9rem .35rem;border-radius:.9rem;background:rgba(255,255,255,.08)}.mm-prayer-time i,.mm-prayer-time span,.mm-prayer-time strong{display:block}.mm-prayer-time span{font-size:.66rem;color:#c6dfd7;margin:.35rem 0}.mm-prayer-time.is-highlight{background:#f7efc9;color:#15473b}.mm-prayer-time.is-highlight span{color:#7d713d}
.mm-function-section{padding:3.2rem 0;background:#fff}.mm-section-heading h2{font-family:"DM Serif Display",Georgia,serif;color:#123e55;font-size:2.2rem}.mm-section-heading p{color:#60736e}.mm-service-card{position:relative;text-align:center;padding:1.65rem 1rem;border:1px solid var(--line);border-radius:1.3rem;background:#fff;box-shadow:0 14px 35px rgba(15,65,51,.06)}.mm-service-icon{width:3.1rem;height:3.1rem;margin:auto;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:1.25rem}.green{background:#078653}.blue{background:#2783e8}.purple{background:#8a42d8}.orange{background:#ff9418}.teal{background:#0a9c8f}.mm-service-card h3{font-size:.98rem;font-weight:800;margin:1rem 0 .55rem}.mm-service-card p{font-size:.76rem;color:#667872;line-height:1.55;margin-bottom:1.8rem}.mm-service-card>a{position:absolute;left:50%;bottom:.7rem;transform:translateX(-50%);width:1.9rem;height:1.9rem;display:grid;place-items:center;border-radius:50%;background:var(--g);color:#fff}.mm-reference-section{padding:3rem 0;background:linear-gradient(180deg,#f4f9f6,#edf5f0)}.mm-daily-card{padding:1.7rem;border-radius:1.8rem;background:linear-gradient(145deg,#fffdf7,#fff);border:1px solid #e7e7d9;box-shadow:0 18px 45px rgba(36,65,48,.08)}.mm-reference-label{color:#087850;font-size:.8rem;font-weight:800}.mm-daily-card h3{font-size:1rem;margin:.5rem 0;font-weight:800}.mm-book-round{width:2.6rem;height:2.6rem;display:grid;place-items:center;border-radius:50%;background:#f6f7ec;color:#c79836}.mm-arabic{font-family:Georgia,serif;text-align:center;font-size:1.65rem;line-height:1.8;margin:1.4rem 0;padding:1.4rem;border-radius:1rem;background:#fff8e9}.mm-translation{text-align:center;color:#526762;font-size:.88rem}.mm-reference{display:block;text-align:center;color:#087850;font-size:.75rem}.mm-daily-footer{display:flex;justify-content:space-between;margin-top:1.35rem;padding-top:1rem;border-top:1px solid #e7ece9;font-size:.7rem;color:#71817c}.mm-daily-footer a{color:var(--g);font-weight:750}
.mm-stat-section{background:#fff;padding:1.2rem 0 2.4rem}.mm-stat-bar{display:grid;grid-template-columns:repeat(4,1fr) 1.25fr;border:1px solid #dcebe3;border-radius:1.2rem;background:#f7fcf8;overflow:hidden}.mm-stat-bar>div{padding:1.2rem;text-align:center;border-right:1px solid #dcebe3}.mm-stat-bar i{display:block;color:var(--g);font-size:1.45rem}.mm-stat-bar strong{display:block;color:#0b6b48;font-size:1.2rem}.mm-stat-bar span{font-size:.68rem;color:#71817c}.mm-stat-calligraphy{font-family:"DM Serif Display",Georgia,serif;color:#087850!important;font-size:1.25rem!important;display:grid;place-items:center;font-style:italic}.mm-portal-cta{padding:3rem 0;background:linear-gradient(110deg,#f7f2df,#eef8f2)}.mm-portal-cta span{color:var(--g);font-size:.72rem;font-weight:850}.mm-portal-cta h2{font-family:"DM Serif Display",Georgia,serif;font-size:2rem}.mm-portal-cta p{color:#667872}.mm-footer{background:#082f3e;color:#c5d4d9}.mm-footer-logo{width:190px;filter:brightness(0) invert(1)}.mm-footer h3{font-size:.8rem;color:#fff}.mm-footer a{display:block;color:#c5d4d9;font-size:.75rem;margin:.4rem 0}.mm-footer-bottom{border-top:1px solid rgba(255,255,255,.09);padding:1rem 0;font-size:.68rem}.mm-footer-bottom .container-xl{display:flex;justify-content:space-between}.mm-mobile-nav{position:fixed;z-index:1045;left:.75rem;right:.75rem;bottom:.75rem;display:grid;grid-template-columns:repeat(4,1fr);background:rgba(255,255,255,.96);border-radius:1.1rem;padding:.4rem;box-shadow:0 12px 35px rgba(17,55,45,.15)}.mm-mobile-nav a{text-align:center;color:#667a74;padding:.45rem}.mm-mobile-nav i,.mm-mobile-nav small{display:block}.mm-mobile-nav small{font-size:.62rem}.mm-mobile-nav a.is-active{color:var(--g)}
.mm-onboarding{position:fixed;inset:0;z-index:2000;background:linear-gradient(135deg,#f8fbf8,#edf6f0);padding:1rem;overflow:auto}.mm-onboarding-window{width:min(1040px,100%);min-height:min(720px,calc(100dvh - 2rem));margin:auto;background:#fff;border:1px solid #dce8e2;border-radius:2rem;box-shadow:0 35px 90px rgba(6,73,50,.16);overflow:hidden;display:flex;flex-direction:column}.mm-onboarding-header{height:84px;padding:1rem 1.4rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf2ef}.mm-onboarding-logo{width:180px}.mm-skip{color:#56716a;font-size:.78rem}.mm-onboarding-stage{flex:1;touch-action:pan-y}.mm-slide{display:none;height:100%;animation:mmFade .3s ease}.mm-slide.is-active{display:block}.mm-slide>.row{min-height:520px}.mm-slide-visual{background:linear-gradient(150deg,#dbeee4,#f5ecd6);position:relative;overflow:hidden}.mm-slide-visual-inner{position:relative;height:100%;min-height:520px;display:grid;place-items:center}.mm-slide-badge{position:absolute;left:1.4rem;top:1.4rem;background:#fff;padding:.4rem .65rem;border-radius:999px;font-size:.7rem;color:var(--g)}.mm-slide-icon{position:relative;z-index:2;width:8rem;height:8rem;border-radius:2.5rem 2.5rem 3.7rem 3.7rem;background:linear-gradient(150deg,#0b975d,#005c43);display:grid;place-items:center;color:#fff;font-size:3rem}.mm-slide-mosque{position:absolute;bottom:-7%;width:100%;opacity:.48}.mm-slide-content{display:flex;align-items:center}.mm-slide-content-inner{padding:3rem 3.5rem}.mm-eyebrow{font-size:.68rem;color:var(--g);font-weight:850}.mm-slide h1{font-family:"DM Serif Display",Georgia,serif;font-size:2.65rem;margin:1rem 0}.mm-slide-content p{color:#647872;line-height:1.75}.mm-never-show{background:#f3f8f5;border:1px solid #dbe9e1;border-radius:.8rem;padding:.75rem 1rem}.mm-onboarding-footer{display:flex;justify-content:space-between;padding:1rem 1.4rem;border-top:1px solid #edf2ef}.mm-dots{display:flex;gap:.4rem}.mm-dot{width:.48rem;height:.48rem;border:0;border-radius:999px;background:#c6d7cf;padding:0}.mm-dot.is-active{width:1.6rem;background:var(--g)}.mm-onboarding-actions{display:flex;gap:.6rem}.mm-btn-ghost{border:1px solid #dbe6e1;border-radius:999px;color:#5d746d}@keyframes mmFade{from{opacity:.25;transform:translateX(10px)}to{opacity:1;transform:none}}
@media(max-width:1199px){.mm-prayer-grid{grid-template-columns:repeat(4,1fr)}.mm-stat-bar{grid-template-columns:repeat(2,1fr)}.mm-stat-calligraphy{grid-column:1/-1}}@media(max-width:991px){.mm-main-with-mobile-nav{padding-bottom:6rem}.mm-navbar .navbar-collapse{position:absolute;top:70px;left:1rem;right:1rem;background:#fff;padding:.7rem;border-radius:1rem;box-shadow:var(--shadow)}.mm-hero-copy{padding:3rem 2rem 15rem}.mm-hero-mosque{width:100%;height:55%;right:0}.mm-hero-quote{display:none}.mm-slide>.row,.mm-slide-visual-inner{min-height:unset}.mm-slide-visual{min-height:270px}.mm-slide-content-inner{padding:2rem}.mm-slide h1{font-size:2rem}}@media(max-width:767px){.mm-logo{width:165px}.mm-hero-panel{min-height:600px}.mm-hero-copy{padding:2.3rem 1.35rem 16rem}.mm-hero h1{font-size:3.1rem}.mm-prayer-grid{grid-template-columns:repeat(2,1fr)}.mm-prayer-time:last-child{grid-column:span 2}.mm-stat-bar{grid-template-columns:1fr 1fr}.mm-onboarding{padding:0}.mm-onboarding-window{border-radius:0;min-height:100dvh}.mm-slide-visual{min-height:240px}.mm-slide-icon{width:6.2rem;height:6.2rem;font-size:2.3rem}.mm-slide-content-inner{padding:1.6rem 1.35rem}.mm-slide h1{font-size:1.9rem}.mm-onboarding-footer{padding:.8rem 1rem}}


/* MyMasjid v4 responsive & icon visibility fixes */
.mm-hero h1 .mm-title-navy,
.mm-hero h1 .mm-title-green{display:block;white-space:nowrap}
.mm-hero h1 .mm-title-navy{color:#102f4b}
.mm-hero h1 .mm-title-green{color:var(--g)}
.mm-slide-icon i{display:block!important;font-size:3rem;line-height:1;color:#fff}
.mm-mobile-nav i{display:block!important;font-size:1.18rem;line-height:1.15;min-height:1.35rem;margin-bottom:.18rem;color:inherit}
.mm-mobile-nav a{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:.08rem}
.mm-mobile-nav small{line-height:1.1;white-space:nowrap}

@media (max-width:1199.98px){
  .mm-hero-quote{display:none!important}
  .mm-hero-copy{max-width:720px}
  .mm-hero-panel{min-height:540px}
}

@media (max-width:991.98px){
  .mm-hero-copy{max-width:none;padding:3rem 2rem 15rem}
  .mm-hero h1{font-size:clamp(2.7rem,7.5vw,4rem)}
}

@media (max-width:767.98px){
  body{overflow-x:hidden}
  .mm-navbar .container-xl{min-height:72px}
  .mm-logo{width:150px;height:50px}
  .mm-hero{padding:.65rem 0 1.5rem}
  .mm-hero .container-xl{padding-left:12px;padding-right:12px}
  .mm-hero-panel{min-height:590px;border-radius:0 0 1.5rem 1.5rem}
  .mm-hero-copy{padding:1.8rem 1.2rem 15.5rem;max-width:100%;overflow:visible}
  .mm-location-chip{font-size:.72rem;padding:.45rem .62rem}
  .mm-hero h1{font-size:clamp(2.25rem,10.1vw,2.75rem);line-height:.98;letter-spacing:-.035em;margin:1.25rem 0 1rem;max-width:100%}
  .mm-hero h1 .mm-title-navy,.mm-hero h1 .mm-title-green{white-space:nowrap}
  .mm-hero-copy>p{font-size:.94rem;line-height:1.68}
  .mm-hero-copy .btn-lg{font-size:.92rem;padding:.68rem 1.05rem}
  .mm-hero-mosque{height:43%;width:110%;right:-10%;bottom:-2%}
  .mm-mobile-nav{left:.55rem;right:.55rem;bottom:.55rem;padding:.38rem .25rem;border:1px solid rgba(8,120,80,.08)}
  .mm-mobile-nav a{padding:.38rem .2rem}
  .mm-mobile-nav i{font-size:1.12rem}
  .mm-mobile-nav small{font-size:.59rem}
  .mm-main-with-mobile-nav{padding-bottom:5.6rem}
  .mm-onboarding-header{height:72px;padding:.75rem 1rem}
  .mm-onboarding-logo{width:150px}
  .mm-slide-visual{min-height:210px}
  .mm-slide-icon{width:5.8rem;height:5.8rem;border-radius:1.9rem 1.9rem 2.7rem 2.7rem}
  .mm-slide-icon i{font-size:2.2rem}
  .mm-slide-content-inner{padding:1.35rem 1.2rem 1.7rem}
  .mm-slide h1{font-size:clamp(1.7rem,7vw,2.05rem);line-height:1.08;margin:.7rem 0}
  .mm-slide-content p{font-size:.9rem;line-height:1.6}
  .mm-onboarding-footer{position:sticky;bottom:0;background:#fff;z-index:4;align-items:center;gap:.5rem}
  .mm-onboarding-actions .btn{font-size:.75rem;padding:.5rem .72rem}
}

@media (max-width:374.98px){
  .mm-logo{width:135px}
  .mm-lang-switch a{padding:.36rem .46rem;font-size:.67rem}
  .mm-hero-copy{padding-left:1rem;padding-right:1rem}
  .mm-hero h1{font-size:clamp(2.02rem,10vw,2.25rem)}
  .mm-mobile-nav small{font-size:.55rem}
}

/* MyMasjid v5: hero collision + footer brand fixes */
.mm-footer-logo{width:205px;height:auto;filter:none!important;display:block;object-fit:contain;object-position:left center}

@media (min-width:1200px){
  .mm-hero-copy{max-width:60%;padding-right:1rem}
  .mm-hero h1{font-size:clamp(3rem,3.65vw,4.05rem);line-height:.98;letter-spacing:-.02em}
  .mm-hero h1 .mm-title-navy,.mm-hero h1 .mm-title-green{display:block;white-space:nowrap}
  .mm-hero-quote{right:1.25rem;top:1.25rem;width:255px}
}
@media (min-width:1200px) and (max-width:1399.98px){
  .mm-hero-copy{max-width:64%;padding-left:2.5rem}
  .mm-hero h1{font-size:3.35rem}
  .mm-hero-quote{width:225px;padding:.85rem}
}
@media (max-width:575.98px){
  .mm-hero h1 .mm-title-navy,.mm-hero h1 .mm-title-green{white-space:normal}
}
/* v6: compact prayer reference + prayer-zone picker */
.mm-reference-section .row{align-items:flex-start}
.mm-prayer-reference-card,.mm-daily-card{height:auto!important;align-self:flex-start}
.mm-prayer-reference-card{min-height:0}
.mm-prayer-reference-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.mm-zone-picker{display:grid;grid-template-columns:auto minmax(260px,1fr);align-items:center;gap:.5rem 1rem;margin:0 0 1.25rem;padding:.8rem 1rem;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.07);border-radius:1rem}
.mm-zone-picker label{font-size:.76rem;font-weight:800;color:#e6f7f0;margin:0}.mm-zone-picker label i{margin-right:.35rem;color:#8bd2b7}.mm-zone-picker .form-select{border:1px solid rgba(255,255,255,.2);background-color:#fff;color:#123b35;border-radius:.7rem;font-size:.78rem;box-shadow:none}.mm-zone-picker small{grid-column:2;font-size:.64rem;color:rgba(255,255,255,.62)}
.mm-prayer-reference-card .mm-prayer-grid{margin-top:.25rem}.mm-prayer-reference-card .mm-prayer-source{margin-bottom:0}
@media(min-width:992px){.mm-prayer-reference-card{padding-bottom:1.35rem}.mm-daily-card{max-height:660px;overflow:auto}.mm-prayer-card-hero{height:auto!important}}
@media(max-width:767px){.mm-prayer-reference-head{display:block}.mm-prayer-reference-head .mm-jakim-badge{display:inline-block;margin-top:.75rem}.mm-zone-picker{grid-template-columns:1fr}.mm-zone-picker small{grid-column:auto}.mm-zone-picker .form-select{width:100%}}

/* MyMasjid v7: auth, portal dashboard, live prayer clock */
.mm-live-clock{margin:1rem 0 .8rem;padding:.7rem .9rem;border-radius:.85rem;background:rgba(255,255,255,.08);display:flex;align-items:center;gap:.55rem;color:#dff4eb;font-size:.72rem}.mm-live-clock strong{margin-left:auto;color:#fff;font-size:1rem;letter-spacing:.03em}.mm-live-clock em{font-style:normal;color:#b9dccf;margin-left:.25rem}.mm-live-clock-reference{background:rgba(255,255,255,.09);margin-bottom:1rem}.mm-prayer-list [data-prayer-time].is-nearest,.mm-prayer-time.is-nearest{background:#fff4c7!important;color:#775b0b!important;border-color:#f5d771!important;box-shadow:0 0 0 2px rgba(245,215,113,.18)}.mm-prayer-time.is-nearest strong,.mm-prayer-time.is-nearest span,.mm-prayer-time.is-nearest i{color:#775b0b!important}
.mm-auth-body{margin:0;min-height:100vh;background:radial-gradient(circle at 10% 10%,#dff2e8,transparent 34%),linear-gradient(140deg,#f8fbf8,#eef5f2);font-family:Inter,sans-serif;color:#103247}.mm-auth-shell{width:min(560px,calc(100% - 28px));margin:0 auto;padding:42px 0 70px}.mm-auth-brand{display:block;text-align:center;margin-bottom:22px}.mm-auth-brand img{width:210px}.mm-auth-card{background:rgba(255,255,255,.96);border:1px solid #dce8e2;border-radius:28px;padding:34px;box-shadow:0 28px 70px rgba(10,68,50,.12)}.mm-auth-card h1{font-family:"DM Serif Display",Georgia,serif;font-size:2.35rem;margin:.35rem 0}.mm-auth-muted{color:#6c7d78;line-height:1.65}.mm-auth-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(145deg,#0b9360,#056144);display:grid;place-items:center;color:#fff;font-size:1.35rem;margin-bottom:16px}.mm-input .input-group-text,.mm-input .form-control,.mm-field{border-color:#d9e5df;background:#fbfdfc;padding:.78rem .9rem}.mm-input .input-group-text{color:#087850;border-radius:12px 0 0 12px}.mm-input .form-control{border-radius:0 12px 12px 0}.mm-field{border-radius:12px}.mm-auth-link{color:#087850;text-decoration:none}.mm-auth-divider{display:flex;align-items:center;gap:12px;color:#9aaaa4;margin:24px 0}.mm-auth-divider:before,.mm-auth-divider:after{content:"";height:1px;flex:1;background:#e4ece8}.mm-pin-input{letter-spacing:.5em;font-weight:800}
.mm-portal-body{background:#f5f8f6;font-family:Inter,sans-serif;color:#153944;min-height:100vh}.mm-portal-top{height:76px;background:#fff;border-bottom:1px solid #e5ece8;position:sticky;top:0;z-index:1050;display:flex;align-items:center}.mm-portal-logo{width:175px}.mm-icon-btn{width:42px;height:42px;border-radius:50%;border:1px solid #dce7e2;background:#fff;color:#0b6e51}.mm-portal-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;padding-top:26px;padding-bottom:50px}.mm-portal-sidebar{position:sticky;top:102px;height:calc(100vh - 120px)}.mm-portal-sidebar nav{background:#fff;border:1px solid #e3ebe7;border-radius:20px;padding:10px;box-shadow:0 12px 30px rgba(19,59,48,.05)}.mm-portal-sidebar a{display:flex;align-items:center;gap:12px;color:#5f736d;text-decoration:none;padding:13px 14px;border-radius:13px;margin:3px 0;font-weight:700;font-size:.86rem}.mm-portal-sidebar a i{font-size:1.08rem}.mm-portal-sidebar a.active{background:#e8f5ef;color:#087850}.mm-portal-main{min-width:0}.mm-dashboard-hero{background:linear-gradient(125deg,#064f42,#087b57);color:#fff;border-radius:26px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:22px;box-shadow:0 20px 50px rgba(4,90,65,.18)}.mm-dashboard-hero h1{font-family:"DM Serif Display",Georgia,serif;font-size:2.3rem;margin:.35rem 0}.mm-dashboard-hero p{color:#cce7dd;margin:0}.mm-dashboard-actions{display:flex;gap:10px;flex-wrap:wrap}.mm-summary-card{background:#fff;border:1px solid #e1eae5;border-radius:19px;padding:20px;box-shadow:0 9px 28px rgba(20,60,48,.04)}.mm-summary-card>span{display:block;color:#6a7f78;font-size:.78rem;font-weight:800}.mm-summary-card>span i{color:#0b8a61}.mm-summary-card strong{display:block;font-size:1.75rem;margin:.35rem 0;color:#0d3947}.mm-summary-card small{color:#84938e}.mm-empty-qariah{background:#fff;border:1px dashed #b8d6c8;border-radius:20px;padding:22px;display:flex;align-items:center;gap:18px}.mm-empty-qariah h3{font-size:1.05rem;margin:0 0 4px}.mm-empty-qariah p{margin:0;color:#71827d}.mm-empty-icon{width:50px;height:50px;border-radius:16px;background:#eaf7f1;color:#078052;display:grid;place-items:center;font-size:1.3rem}.mm-empty-qariah .btn{margin-left:auto}.mm-section-row,.mm-page-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}.mm-section-row h2,.mm-page-head h1{font-family:"DM Serif Display",Georgia,serif;margin:.15rem 0 0}.mm-section-row a{color:#087850;text-decoration:none;font-weight:700}.mm-mosque-card,.mm-list-card{background:#fff;border:1px solid #e1eae5;border-radius:18px;padding:18px;display:flex;gap:15px;height:100%}.mm-mosque-avatar,.mm-list-icon{width:48px;height:48px;border-radius:15px;flex:0 0 auto;background:#e8f5ef;color:#087850;display:grid;place-items:center;font-size:1.15rem}.mm-list-icon.orange{background:#fff3e5;color:#ef8b18}.mm-mosque-card h3,.mm-list-card h3{font-size:.96rem;margin:0 0 5px}.mm-mosque-card p,.mm-list-card p{font-size:.78rem;color:#7b8b86;margin:0}.mm-list-card small{color:#0b8059;font-weight:700}.mm-status{display:inline-block;margin-top:7px;padding:.25rem .55rem;border-radius:999px;font-size:.65rem;font-weight:800}.mm-status.approved{background:#def5e8;color:#08784f}.mm-status.pending{background:#fff2cf;color:#856000}.mm-status.rejected{background:#fee5e5;color:#a52c2c}.mm-soft-empty{background:#fff;border:1px dashed #cadbd3;border-radius:17px;padding:24px;color:#778983;text-align:center}.mm-role-card{display:flex;flex-direction:column;gap:5px;text-decoration:none;background:#0a3e4a;color:#fff;border-radius:18px;padding:20px;height:100%}.mm-role-card i{font-size:1.5rem;color:#68c69f}.mm-role-card span{color:#b9d1d5;font-size:.76rem}.mm-table-card,.mm-profile-card{background:#fff;border:1px solid #e1eae5;border-radius:20px;padding:22px}.mm-modal{border:0;border-radius:20px}.mm-portal-mobile-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:1060;background:rgba(255,255,255,.97);border:1px solid #dce8e2;border-radius:18px;display:grid;grid-template-columns:repeat(4,1fr);padding:7px;box-shadow:0 14px 35px rgba(20,60,48,.16)}.mm-portal-mobile-nav a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:#71837d;padding:5px;font-size:.95rem}.mm-portal-mobile-nav small{font-size:.58rem;margin-top:2px}.mm-portal-mobile-nav a.active{color:#087850}.mm-portal-mobile-nav a.active i{transform:translateY(-1px)}
@media(max-width:991.98px){.mm-portal-layout{display:block;padding-bottom:100px}.mm-dashboard-hero{align-items:flex-start;flex-direction:column}.mm-empty-qariah{align-items:flex-start;flex-wrap:wrap}.mm-empty-qariah .btn{margin-left:0}.mm-page-head{align-items:flex-start;flex-direction:column}.mm-dashboard-hero h1{font-size:1.9rem}}
@media(max-width:575.98px){.mm-auth-shell{padding-top:20px}.mm-auth-card{padding:24px 18px;border-radius:22px}.mm-auth-card h1{font-size:2rem}.mm-portal-logo{width:145px}.mm-dashboard-hero{padding:22px;border-radius:20px}.mm-dashboard-actions .btn{width:100%}.mm-section-row{align-items:flex-start}.mm-summary-card strong{font-size:1.45rem}}

/* MyMasjid v8: 12-hour clock, readable active prayer, six-box PIN */
.mm-live-clock strong{min-width:8.25rem;text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.mm-prayer-list [data-prayer-time].is-nearest,.mm-prayer-time.is-nearest{background:linear-gradient(135deg,#fff6cf,#ffe9a1)!important;color:#173f36!important;border:1px solid #f3cd58!important;box-shadow:0 5px 18px rgba(247,202,68,.18),inset 0 0 0 1px rgba(255,255,255,.4)!important}
.mm-prayer-list [data-prayer-time].is-nearest span,.mm-prayer-list [data-prayer-time].is-nearest strong,.mm-prayer-list [data-prayer-time].is-nearest i,.mm-prayer-time.is-nearest span,.mm-prayer-time.is-nearest strong,.mm-prayer-time.is-nearest i{color:#173f36!important;opacity:1!important}
.mm-prayer-list [data-prayer-time].is-nearest strong,.mm-prayer-time.is-nearest strong{font-weight:900}
.mm-pin-boxes{display:grid;grid-template-columns:repeat(6,minmax(42px,1fr));gap:.65rem;width:100%;max-width:430px}
.mm-pin-box{width:100%;height:58px;border:1.5px solid #d7e5de;border-radius:14px;background:#fbfdfc;text-align:center;font-size:1.5rem;font-weight:800;color:#103247;outline:none;transition:border-color .2s,box-shadow .2s,transform .15s}
.mm-pin-box:focus{border-color:#078754;box-shadow:0 0 0 4px rgba(7,135,84,.12);transform:translateY(-1px)}
.mm-pin-box:not(:placeholder-shown){background:#f2faf6}
@media(max-width:480px){.mm-pin-boxes{gap:.4rem}.mm-pin-box{height:52px;border-radius:11px;font-size:1.25rem}.mm-live-clock{flex-wrap:wrap}.mm-live-clock strong{min-width:auto;margin-left:auto}.mm-live-clock em{width:100%;margin:.15rem 0 0}}

/* MyMasjid v11: profile PIN, language-ready portal, super admin */
.mm-superadmin-hero{background:linear-gradient(125deg,#0b3044,#075f55)}
.mm-admin-stat{min-height:122px}.mm-admin-stat strong{font-size:1.55rem}
.mm-admin-credential-box{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:16px;background:#eef8f3;border:1px solid #d5ebe0}.mm-admin-credential-box i{font-size:1.5rem;color:#087850}.mm-admin-credential-box strong{display:block;margin-bottom:4px}.mm-admin-credential-box p{margin:0;color:#637a72;font-size:.82rem;line-height:1.55}
.mm-table-card .table>:not(caption)>*>*{padding:.9rem .75rem;border-color:#edf2ef}.mm-table-card thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#758780;white-space:nowrap}.mm-table-card tbody td{font-size:.84rem;color:#294852}
.mm-superadmin-nav-note{padding:9px 14px 5px;color:#8a9994;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
@media(max-width:575.98px){.mm-profile-card .mm-pin-boxes{max-width:100%}.mm-profile-card .mm-pin-box{height:48px}.mm-admin-stat{min-height:105px}.mm-admin-stat strong{font-size:1.25rem}}

/* MyMasjid v12: Super Admin mosque management + Mosque Admin dashboard */
.mm-panel-card{background:#fff;border:1px solid #e1eae5;border-radius:22px;padding:24px;box-shadow:0 10px 28px rgba(20,60,48,.045)}
.mm-panel-card h2{font-family:"DM Serif Display",Georgia,serif;font-size:1.45rem;color:#123b47;margin-bottom:.45rem}
.mm-panel-card.border-danger{border-color:#f1c9c9!important}
.mm-mosque-card.text-decoration-none{color:inherit;transition:transform .16s ease,box-shadow .16s ease}.mm-mosque-card.text-decoration-none:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(20,60,48,.08)}
.mm-portal-sidebar .mm-nav-badge{margin-left:auto;background:#d32f2f;color:#fff;min-width:21px;height:21px;border-radius:999px;display:inline-grid;place-items:center;font-size:.62rem;padding:0 6px}
.mm-portal-mobile-nav.mm-five{grid-template-columns:repeat(5,1fr)}
.mm-portal-mobile-nav .mm-mobile-badge{position:absolute;top:0;right:24%;background:#d32f2f;color:#fff;border-radius:999px;min-width:16px;height:16px;display:grid;place-items:center;font-size:.5rem;padding:0 4px}
.mm-portal-mobile-nav a{position:relative}
@media(max-width:575.98px){.mm-panel-card{padding:18px;border-radius:18px}.mm-portal-mobile-nav.mm-five{left:6px;right:6px;bottom:6px;padding:5px 3px}.mm-portal-mobile-nav.mm-five a{padding:5px 1px}.mm-portal-mobile-nav.mm-five small{font-size:.5rem}.mm-portal-mobile-nav.mm-five i{font-size:.92rem}}

/* MyMasjid v13: qariah address review, tabs and bulk approval */
.mm-qariah-tabs{display:flex;gap:.55rem;flex-wrap:wrap}.mm-qariah-tabs a{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:#60766e;background:#fff;border:1px solid #dfe9e4;border-radius:999px;padding:.68rem 1rem;font-weight:800;font-size:.82rem}.mm-qariah-tabs a span{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;background:#eef4f1;color:#537067;font-size:.68rem}.mm-qariah-tabs a.active{background:#0a7d55;color:#fff;border-color:#0a7d55;box-shadow:0 8px 20px rgba(10,125,85,.16)}.mm-qariah-tabs a.active span{background:rgba(255,255,255,.18);color:#fff}
.mm-qariah-table{min-width:1160px}.mm-qariah-table .mm-check-col{width:42px;text-align:center}.mm-qariah-table .form-check-input{width:1.1rem;height:1.1rem;cursor:pointer;border-color:#a8beb5}.mm-qariah-table .form-check-input:checked{background-color:#087850;border-color:#087850}.mm-address-cell{max-width:235px;line-height:1.42;font-size:.78rem;color:#546e66;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mm-bulk-qariah-bar{position:sticky;bottom:14px;z-index:1040;margin-top:16px;background:#0b3d49;color:#fff;border-radius:18px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 16px 40px rgba(7,45,54,.2)}.mm-bulk-qariah-bar strong{display:block}.mm-bulk-qariah-bar small{display:block;color:#c3d8da;margin-top:2px}.mm-bulk-qariah-bar .btn{white-space:nowrap;border-radius:12px;font-weight:800}
.mm-address-review{display:flex;gap:14px;align-items:flex-start;background:#eef8f3;border:1px solid #d7ebe1;border-radius:16px;padding:16px}.mm-address-review.secondary{background:#f5f7fa;border-color:#e2e8ec}.mm-address-review>i{width:42px;height:42px;border-radius:13px;background:#fff;display:grid;place-items:center;color:#087850;flex:0 0 auto;box-shadow:0 5px 14px rgba(18,70,53,.06)}.mm-address-review small{display:block;color:#74877f;font-size:.72rem;font-weight:800;margin-bottom:4px;text-transform:uppercase;letter-spacing:.03em}.mm-address-review strong{display:block;color:#193f49;line-height:1.55;font-size:.9rem;font-weight:700}
.mm-field[rows]{min-height:94px;resize:vertical;line-height:1.55}
@media(max-width:767.98px){.mm-bulk-qariah-bar{bottom:78px;align-items:stretch;flex-direction:column}.mm-bulk-qariah-bar .btn{width:100%}.mm-qariah-tabs a{flex:1;justify-content:center}.mm-address-review{padding:14px}.mm-address-review>i{width:38px;height:38px}}

/* v14 - separated Profile / Security cards */
.mm-profile-section-icon {
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 137, 89, .10);
    color: #008959;
    font-size: 1.45rem;
}
.mm-profile-section-icon-security {
    background: rgba(11, 54, 71, .09);
    color: #0b3647;
}
.mm-security-card {
    border-top: 4px solid rgba(0, 137, 89, .16);
}
.mm-security-note {
    display: flex;
    gap: .7rem;
    align-items: flex-start;
    padding: .9rem 1rem;
    border-radius: 14px;
    background: #f3f8f5;
    color: #526b63;
    font-size: .92rem;
}
.mm-password-group .mm-field {
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
.mm-password-group .btn {
    min-width: 52px;
    border-color: #d4e1dc;
    border-top-right-radius: 14px;
    border-bottom-right-radius: 14px;
}
@media (max-width: 575.98px) {
    .mm-profile-section-icon {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        border-radius: 13px;
        font-size: 1.2rem;
    }
    .mm-security-card .mm-pin-boxes {
        gap: 8px;
    }
    .mm-security-card .mm-pin-box {
        min-width: 0;
        width: calc((100% - 40px) / 6);
        height: 58px;
    }
}

/* v15 - mosque admin permissions & finance maker/checker */
.mm-access-check-grid{display:grid;gap:.75rem}.mm-access-check-grid label{display:flex;align-items:flex-start;gap:.8rem;padding:.9rem 1rem;border:1px solid #dce8e3;border-radius:16px;background:#fbfdfc;cursor:pointer}.mm-access-check-grid label:hover{border-color:#8fcdb3;background:#f4fbf7}.mm-access-check-grid label .form-check-input{margin-top:.25rem;flex:0 0 auto}.mm-access-check-grid label span{display:grid;grid-template-columns:auto 1fr;column-gap:.55rem;align-items:center}.mm-access-check-grid label span i{color:#09865a;font-size:1.05rem}.mm-access-check-grid label span b{font-weight:800}.mm-access-check-grid label span small{grid-column:1/-1;color:#74847e;margin-top:.15rem}.mm-finance-role-card{display:flex;align-items:center;gap:1rem;padding:1.15rem 1.25rem}.mm-finance-role-card h3{font-size:1.08rem;margin:.1rem 0}.mm-finance-role-card p{font-size:.88rem;color:#77857f;margin:0}.mm-finance-role-card small{font-weight:800;color:#087f56;text-transform:uppercase;letter-spacing:.05em}.mm-dashboard-actions{display:flex;gap:.65rem;flex-wrap:wrap}.mm-dashboard-actions .btn{border-radius:999px;font-weight:700}.mm-admin-access-hint{border-left:4px solid #168d5b;background:#f4fbf7;padding:1rem 1.1rem;border-radius:0 14px 14px 0}
@media(max-width:767.98px){.mm-finance-role-card{align-items:flex-start}.mm-dashboard-actions{width:100%}.mm-dashboard-actions .btn{flex:1 1 auto}.mm-access-check-grid label{padding:.8rem}.modal .mm-access-check-grid{grid-template-columns:1fr}}

/* v18: Mosque website, activities, asset & inventory operations */
.mm-admin-ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.mm-admin-op{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid #dce9e4;border-radius:20px;background:#fff;text-decoration:none;color:#103b48;box-shadow:0 10px 28px rgba(14,74,63,.06);transition:.2s ease}.mm-admin-op:hover{transform:translateY(-2px);border-color:#97cfb9;color:#087f5b}.mm-admin-op>i{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:#e8f6ef;color:#087f5b;font-size:1.25rem}.mm-admin-op strong,.mm-admin-op small{display:block}.mm-admin-op small{color:#758b87;margin-top:3px}.mm-setting-switch{padding:14px 14px 14px 3.2rem;border:1px solid #e1ebe7;border-radius:15px;margin-bottom:10px}.mm-setting-switch .form-check-input{margin-left:-2.2rem}.mm-stock-box{background:#eef8f4;border-radius:18px;padding:16px;margin-top:18px}.mm-stock-box small,.mm-stock-box strong{display:block}.mm-stock-box strong{font-size:2rem;color:#087f5b}.mm-asset-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mm-asset-meta span{background:#f2f7f5;border-radius:12px;padding:10px;text-align:center;font-size:.8rem}.mm-asset-meta b{display:block;font-size:1rem;color:#0b3345}.mm-inventory-card small{display:block;margin-top:4px;color:#758b87}.mm-mosque-public-hero{min-height:430px;background:linear-gradient(110deg,#063e3a,#0b3345);background-size:cover;background-position:center;display:flex;align-items:center}.mm-mosque-public-hero h1{font-family:'DM Serif Display',serif;font-size:clamp(2.8rem,6vw,5.4rem);max-width:900px}.mm-public-mosque-logo{width:86px;height:86px;object-fit:contain;background:#fff;border-radius:22px;padding:10px;display:block}.mm-mosque-public-hero .btn{border-radius:999px;padding:.75rem 1.25rem;font-weight:700}.mm-tier-row{align-items:center}
@media(max-width:991.98px){.mm-admin-ops-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-tier-row .col-3,.mm-tier-row .col-2{width:50%;}.mm-tier-row .col-1{width:100%}}
@media(max-width:575.98px){.mm-admin-ops-grid{grid-template-columns:1fr}.mm-admin-op{padding:15px}.mm-asset-meta{grid-template-columns:1fr 1fr 1fr}.mm-mosque-public-hero{min-height:520px}.mm-mosque-public-hero h1{font-size:2.8rem}}
