/*
 * Janaz Masjid Profiles — front.css
 * Uses the Janaz theme's CSS custom properties natively.
 */

/* Override entry-content width restriction */
.entry-content .jmp-form-wrap,
.entry-content .jmp-dashboard,
.entry-content .jmp-refer-wrap,
.entry-content .jmp-reg-wrap {
  max-width: none;
}

/* Hero banners */
.jmp-hero-banner {
  background: linear-gradient(135deg, var(--forest-dark, #1e3a0e) 0%, var(--forest, #2D5016) 55%, var(--forest-mid, #3a6b1d) 100%);
  border-radius: var(--r-xl, 28px);
  padding: clamp(2.5rem, 6vw, 4rem) clamp(1.5rem, 5vw, 3.5rem);
  text-align: center;
  margin-bottom: 2.5rem;
  position: relative;
  overflow: hidden;
}
.jmp-hero-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Ccircle cx='40' cy='40' r='37' fill='none' stroke='%23ffffff' stroke-width='.5' stroke-opacity='.06'/%3E%3C/svg%3E");
  pointer-events: none;
}
.jmp-hero-banner > * { position: relative; z-index: 1; }
.jmp-hero-bismillah { font-family: var(--font-arabic,'Amiri',serif); font-size:clamp(.9rem,2.5vw,1.2rem); color:rgba(255,255,255,.6); direction:rtl; display:block; margin-bottom:1rem; }
.jmp-hero-title { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(2rem,6vw,3.2rem); font-weight:700; color:#fff; line-height:1.1; letter-spacing:-.02em; margin-bottom:.85rem; }
.jmp-hero-sub { font-size:clamp(.88rem,2vw,1.05rem); color:rgba(255,255,255,.78); max-width:520px; margin:0 auto 1.5rem; line-height:1.65; }
.jmp-hero-pills { display:flex; flex-wrap:wrap; justify-content:center; gap:.5rem; }
.jmp-hero-pill { display:inline-flex; align-items:center; gap:6px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:var(--r-pill,999px); padding:5px 14px; font-size:.78rem; color:rgba(255,255,255,.88); }

/* Steps */
.jmp-steps { display:flex; align-items:flex-start; justify-content:center; margin-bottom:2.5rem; position:relative; }
.jmp-steps::before { content:''; position:absolute; top:18px; left:calc(12.5% + 18px); right:calc(12.5% + 18px); height:2px; background:var(--border,#d4cfc5); z-index:0; }
.jmp-step { flex:1; display:flex; flex-direction:column; align-items:center; gap:7px; position:relative; z-index:1; }
.jmp-step-dot { width:36px; height:36px; border-radius:50%; border:2px solid var(--border,#d4cfc5); background:var(--white,#fff); color:var(--ink-muted,#6b6b6b); display:flex; align-items:center; justify-content:center; font-size:.8rem; font-weight:700; transition:all var(--trans,250ms ease); }
.jmp-step.active .jmp-step-dot { background:var(--forest,#2D5016); border-color:var(--forest,#2D5016); color:#fff; box-shadow:0 0 0 4px rgba(45,80,22,.15); }
.jmp-step.done   .jmp-step-dot { background:var(--sage-light,#c4d9ae); border-color:var(--forest,#2D5016); color:var(--forest,#2D5016); }
.jmp-step-label { font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-muted,#6b6b6b); white-space:nowrap; }
.jmp-step.active .jmp-step-label { color:var(--forest,#2D5016); }
.jmp-step.done   .jmp-step-label { color:var(--moss,#4a7c2a); }

/* Panel visibility */
.jmp-panel { display:none; }
.jmp-panel.active { display:block; animation:jmpFadeUp .3s ease both; }
.jmp-tab-panel { display:none; }
.jmp-tab-panel.active { display:block; animation:jmpFadeUp .25s ease both; }
@keyframes jmpFadeUp { from{opacity:0;transform:translateY(10px);} to{opacity:1;transform:translateY(0);} }

/* Cards */
.jmp-card { background:var(--white,#fff); border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-xl,28px); padding:clamp(1.5rem,4vw,2.25rem); margin-bottom:1.25rem; box-shadow:var(--shadow-sm,0 1px 4px rgba(45,80,22,.07)); }
.jmp-card:last-child { margin-bottom:0; }
.jmp-card--accent { border-top:3px solid var(--forest,#2D5016); }

.jmp-card-title { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(1.1rem,3vw,1.5rem); font-weight:600; color:var(--ink,#1a1a1a); letter-spacing:-.01em; margin-bottom:.3rem; }
.jmp-card-sub { font-size:.875rem; color:var(--ink-muted,#6b6b6b); line-height:1.6; margin-bottom:1.5rem; }
.jmp-card-eyebrow { font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--moss,#4a7c2a); margin-bottom:1.25rem; padding-bottom:.6rem; border-bottom:1px solid var(--border-light,#e8e4dc); display:flex; align-items:center; justify-content:space-between; }

/* Banners */
.jmp-banner { border-radius:var(--r-lg,20px); padding:1rem 1.25rem; margin-bottom:1.25rem; display:flex; gap:12px; align-items:flex-start; font-size:.875rem; line-height:1.55; }
.jmp-banner--green { background:rgba(45,80,22,.06); border:1px solid var(--sage-light,#c4d9ae); color:var(--ink-soft,#3d3d3d); }
.jmp-banner--amber { background:#fffbeb; border:1px solid #f0d070; color:#78350f; }
.jmp-banner--blue  { background:#eff6ff; border:1px solid #bfdbfe; color:#1e3a5f; }
.jmp-banner-icon   { font-size:1.1rem; flex-shrink:0; line-height:1.35; }
.jmp-banner strong { display:block; font-weight:700; margin-bottom:3px; }

/* Feature list */
.jmp-features { list-style:none; padding:0; margin:0 0 1.5rem; display:flex; flex-direction:column; gap:1rem; }
.jmp-feature { display:flex; gap:1rem; align-items:flex-start; }
.jmp-feature-icon { width:42px; height:42px; border-radius:var(--r-md,12px); background:rgba(45,80,22,.07); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:1.1rem; }
.jmp-feature-text strong { display:block; font-size:.9rem; font-weight:700; margin-bottom:2px; }
.jmp-feature-text span   { font-size:.82rem; color:var(--ink-muted,#6b6b6b); line-height:1.5; }

/* Fields */
.jmp-fields   { display:grid; gap:1rem; }
.jmp-fields-2 { grid-template-columns:1fr 1fr; }
.jmp-fields-3 { grid-template-columns:1fr 1fr 1fr; }
.jmp-field label { display:block; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-soft,#3d3d3d); margin-bottom:.4rem; }
.jmp-field label .req { color:#c0392b; margin-left:2px; }
.jmp-field label .opt { font-weight:400; text-transform:none; color:var(--ink-muted,#6b6b6b); font-size:.7rem; letter-spacing:0; }
.jmp-field input,
.jmp-field select,
.jmp-field textarea {
  width:100%; padding:.7rem 1rem;
  border:1.5px solid var(--border,#d4cfc5);
  border-radius:var(--r-md,12px);
  font-size:.9375rem;
  font-family:var(--font-body,inherit);
  color:var(--ink,#1a1a1a);
  background:var(--cream,#f5f2eb);
  outline:none;
  transition:border-color var(--trans,250ms ease),box-shadow var(--trans,250ms ease),background var(--trans,250ms ease);
}
.jmp-field input:focus,
.jmp-field select:focus,
.jmp-field textarea:focus { border-color:var(--forest,#2D5016); background:var(--white,#fff); box-shadow:0 0 0 3px rgba(45,80,22,.09); }
.jmp-field textarea { resize:vertical; min-height:90px; }
.jmp-field-hint { font-size:.75rem; color:var(--ink-muted,#6b6b6b); margin:.3rem 0 0; line-height:1.45; }
.jmp-section-divider { font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--moss,#4a7c2a); margin:1.5rem 0 .9rem; padding-bottom:.5rem; border-bottom:1px solid var(--border-light,#e8e4dc); }

/* Upload zones */
.jmp-upload-zone { border:2px dashed var(--sage-light,#c4d9ae); border-radius:var(--r-lg,20px); padding:2rem 1.5rem; text-align:center; cursor:pointer; transition:all var(--trans,250ms ease); background:var(--cream,#f5f2eb); }
.jmp-upload-zone:hover { border-color:var(--forest,#2D5016); background:rgba(45,80,22,.04); }
.jmp-upload-zone .icon  { font-size:1.8rem; margin-bottom:.5rem; }
.jmp-upload-zone .label { font-size:.875rem; font-weight:600; color:var(--moss,#4a7c2a); }
.jmp-upload-zone .hint  { font-size:.75rem; color:var(--ink-muted,#6b6b6b); margin-top:3px; }
.jmp-upload-preview { display:none; border-radius:var(--r-md,12px); overflow:hidden; position:relative; margin-top:.75rem; }
.jmp-upload-preview img { width:100%; display:block; }
.jmp-upload-preview.logo  img { height:80px; object-fit:contain; background:var(--cream,#f5f2eb); }
.jmp-upload-preview.photo img { height:120px; object-fit:cover; }
.jmp-upload-remove { position:absolute; top:6px; right:6px; background:rgba(0,0,0,.5); border:none; color:#fff; border-radius:50%; width:24px; height:24px; cursor:pointer; font-size:.75rem; display:flex; align-items:center; justify-content:center; }

/* Nav buttons */
.jmp-nav { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-top:1.5rem; padding-top:1.25rem; border-top:1px solid var(--border-light,#e8e4dc); }
.jmp-nav--right { justify-content:flex-end; }
.jmp-btn-back { display:inline-flex; align-items:center; gap:6px; padding:.65rem 1.25rem; border:1.5px solid var(--border,#d4cfc5); border-radius:var(--r-pill,999px); background:var(--white,#fff); font-size:.875rem; font-weight:600; color:var(--ink-muted,#6b6b6b); cursor:pointer; transition:all var(--trans,250ms ease); font-family:var(--font-body,inherit); }
.jmp-btn-back:hover { border-color:var(--forest,#2D5016); color:var(--forest,#2D5016); }
.jmp-btn-next,
.jmp-btn-submit { display:inline-flex; align-items:center; gap:8px; padding:.75rem 1.75rem; border:none; border-radius:var(--r-pill,999px); background:var(--forest,#2D5016); color:#fff; font-size:.9375rem; font-weight:600; cursor:pointer; transition:all var(--trans,250ms ease); font-family:var(--font-body,inherit); }
.jmp-btn-next:hover,
.jmp-btn-submit:hover { background:var(--forest-dark,#1e3a0e); transform:translateY(-1px); box-shadow:var(--shadow-md,0 4px 16px rgba(45,80,22,.10)); }
.jmp-btn-next:disabled,
.jmp-btn-submit:disabled { opacity:.55; cursor:not-allowed; transform:none; }
.jmp-step-hint { font-size:.78rem; color:var(--ink-muted,#6b6b6b); }

/* Messages */
.jmp-msg { border-radius:var(--r-md,12px); padding:.85rem 1.1rem; margin-bottom:1rem; font-size:.875rem; display:none; }
.jmp-msg--success { background:#ecfdf5; border:1px solid #a7f3d0; color:#065f46; }
.jmp-msg--error   { background:#fef2f2; border:1px solid #fca5a5; color:#991b1b; }

/* Password strength */
.jmp-strength-bar  { height:4px; border-radius:2px; background:var(--border,#d4cfc5); margin-top:6px; overflow:hidden; }
.jmp-strength-fill { height:100%; width:0; border-radius:2px; transition:all .3s; }
.jmp-strength-text { font-size:.75rem; margin-top:4px; }

/* Success */
.jmp-success { text-align:center; padding:clamp(2.5rem,6vw,4rem) 2rem; }
.jmp-success-icon { width:76px; height:76px; border-radius:50%; background:linear-gradient(135deg,var(--forest,#2D5016),var(--moss,#4a7c2a)); display:flex; align-items:center; justify-content:center; margin:0 auto 1.25rem; font-size:1.75rem; }
.jmp-success h2 { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(1.5rem,4vw,2rem); color:var(--ink,#1a1a1a); margin-bottom:.75rem; }
.jmp-success p { color:var(--ink-muted,#6b6b6b); max-width:420px; margin:0 auto .75rem; line-height:1.6; }
.jmp-legal { font-size:.75rem; color:var(--ink-muted,#6b6b6b); text-align:center; line-height:1.5; margin-top:1rem; }
.jmp-legal a { color:var(--moss,#4a7c2a); }
.jmp-login-link { text-align:center; margin-top:1.25rem; font-size:.875rem; color:var(--ink-muted,#6b6b6b); }
.jmp-login-link a { color:var(--forest,#2D5016); font-weight:700; text-decoration:underline; text-decoration-color:rgba(45,80,22,.35); }

/* Dashboard header */
.jmp-dash-head { background:linear-gradient(135deg,var(--forest-dark,#1e3a0e) 0%,var(--forest,#2D5016) 55%,var(--forest-mid,#3a6b1d) 100%); border-radius:var(--r-xl,28px); padding:clamp(1.5rem,4vw,2.25rem); display:flex; align-items:center; gap:1.25rem; margin-bottom:1.5rem; position:relative; overflow:hidden; flex-wrap:wrap; }
.jmp-dash-head::before { content:''; position:absolute; inset:0; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80'%3E%3Ccircle cx='40' cy='40' r='37' fill='none' stroke='%23ffffff' stroke-width='.5' stroke-opacity='.06'/%3E%3C/svg%3E"); pointer-events:none; }
.jmp-dash-head > * { position:relative; z-index:1; }
.jmp-dash-logo { width:68px; height:68px; border-radius:var(--r-lg,20px); object-fit:contain; background:rgba(255,255,255,.14); border:1.5px solid rgba(255,255,255,.2); flex-shrink:0; padding:6px; }
.jmp-dash-logo-ph { width:68px; height:68px; border-radius:var(--r-lg,20px); background:rgba(255,255,255,.12); border:1.5px solid rgba(255,255,255,.15); display:flex; align-items:center; justify-content:center; font-size:1.75rem; flex-shrink:0; }
.jmp-dash-head-body { flex:1; min-width:0; }
.jmp-dash-title { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(1.4rem,4vw,1.9rem); font-weight:700; color:#fff; margin-bottom:.5rem; line-height:1.15; letter-spacing:-.01em; }
.jmp-dash-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; }
.jmp-badge-verified { display:inline-flex; align-items:center; gap:5px; background:rgba(255,255,255,.18); border:1px solid rgba(255,255,255,.25); border-radius:var(--r-pill,999px); padding:4px 12px; font-size:.72rem; font-weight:700; color:#fff; letter-spacing:.03em; }
.jmp-badge-pending  { display:inline-flex; align-items:center; gap:5px; background:rgba(251,191,36,.18); border:1px solid rgba(251,191,36,.3); border-radius:var(--r-pill,999px); padding:4px 12px; font-size:.72rem; font-weight:700; color:#fde68a; }
.jmp-view-profile   { display:inline-flex; align-items:center; gap:5px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.2); border-radius:var(--r-pill,999px); padding:4px 13px; font-size:.78rem; color:rgba(255,255,255,.88); text-decoration:none; transition:all var(--trans,250ms ease); }
.jmp-view-profile:hover { background:rgba(255,255,255,.22); color:#fff; }
.jmp-head-btn { display:inline-flex; align-items:center; gap:6px; padding:.65rem 1.25rem; background:#fff; border:none; border-radius:var(--r-pill,999px); font-size:.875rem; font-weight:700; color:var(--forest,#2D5016); cursor:pointer; transition:all var(--trans,250ms ease); font-family:var(--font-body,inherit); flex-shrink:0; }
.jmp-head-btn:hover { background:var(--cream,#f5f2eb); transform:translateY(-1px); }

/* Notices */
.jmp-notice { border-radius:var(--r-lg,20px); padding:1rem 1.25rem; margin-bottom:1.25rem; display:flex; gap:.75rem; align-items:flex-start; font-size:.875rem; line-height:1.55; }
.jmp-notice--warning { background:#fffbeb; border:1px solid #f0d070; color:#78350f; }
.jmp-notice--info    { background:#eff6ff; border:1px solid #bfdbfe; color:#1e3a5f; }
.jmp-notice-icon     { font-size:1rem; flex-shrink:0; line-height:1.5; }
.jmp-notice a        { color:var(--forest,#2D5016); font-weight:700; text-decoration:underline; }

/* Stats */
.jmp-stats { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-bottom:1.5rem; }
.jmp-stat  { background:var(--white,#fff); border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-xl,28px); padding:1.25rem; text-align:center; }
.jmp-stat-num   { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:2.2rem; font-weight:700; color:var(--forest,#2D5016); line-height:1; }
.jmp-stat-label { font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--ink-muted,#6b6b6b); margin-top:4px; }

/* Tabs */
.jmp-tabs { display:flex; gap:3px; background:var(--parchment,#e8e2d6); border-radius:var(--r-lg,20px); padding:4px; margin-bottom:1.5rem; overflow-x:auto; scrollbar-width:none; -ms-overflow-style:none; }
.jmp-tabs::-webkit-scrollbar { display:none; }
.jmp-tab { display:inline-flex; align-items:center; gap:6px; padding:.6rem 1rem; border:none; border-radius:var(--r-md,12px); font-size:.82rem; font-weight:600; color:var(--ink-muted,#6b6b6b); background:transparent; cursor:pointer; transition:all var(--trans,250ms ease); white-space:nowrap; font-family:var(--font-body,inherit); }
.jmp-tab:hover  { background:rgba(255,255,255,.5); color:var(--ink,#1a1a1a); }
.jmp-tab.active { background:var(--white,#fff); color:var(--forest,#2D5016); box-shadow:var(--shadow-sm,0 1px 4px rgba(45,80,22,.07)); }
.jmp-tab-count  { background:var(--forest,#2D5016); color:#fff; font-size:.65rem; font-weight:700; padding:1px 6px; border-radius:var(--r-pill,999px); line-height:1.6; }

/* Panel title / note */
.jmp-panel-title { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(1.2rem,3vw,1.6rem); font-weight:600; color:var(--ink,#1a1a1a); margin-bottom:.35rem; letter-spacing:-.01em; }
.jmp-panel-note  { font-size:.875rem; color:var(--ink-muted,#6b6b6b); margin-bottom:1.5rem; line-height:1.6; }

/* Announcement list (dashboard) */
.jmp-ann-list { display:flex; flex-direction:column; gap:.85rem; }
.jmp-ann-item { border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-lg,20px); padding:1rem 1.25rem; display:flex; align-items:center; gap:1rem; background:var(--white,#fff); transition:all var(--trans,250ms ease); }
.jmp-ann-item:hover { box-shadow:var(--shadow-md,0 4px 16px rgba(45,80,22,.1)); border-color:var(--sage-light,#c4d9ae); }
.jmp-ann-avatar-ph { width:50px; height:50px; border-radius:var(--r-md,12px); background:linear-gradient(135deg,var(--parchment,#e8e2d6),var(--sage-light,#c4d9ae)); display:flex; align-items:center; justify-content:center; font-size:1.2rem; flex-shrink:0; }
.jmp-ann-thumb { width:50px; height:50px; border-radius:var(--r-md,12px); object-fit:cover; flex-shrink:0; }
.jmp-ann-body  { flex:1; min-width:0; }
.jmp-ann-name  { font-weight:700; font-size:.95rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.jmp-ann-meta  { font-size:.78rem; color:var(--ink-muted,#6b6b6b); margin-top:3px; }
.jmp-ann-badge { display:inline-block; padding:2px 9px; border-radius:var(--r-pill,999px); font-size:.68rem; font-weight:700; letter-spacing:.03em; }
.jmp-ann-badge--pub   { background:rgba(45,80,22,.1); color:var(--forest,#2D5016); }
.jmp-ann-badge--draft { background:#fffbeb; color:#78350f; }

/* Intake link card */
.jmp-link-card { background:linear-gradient(135deg,rgba(45,80,22,.05),rgba(74,124,42,.08)); border:1px solid var(--sage-light,#c4d9ae); border-radius:var(--r-xl,28px); padding:1.5rem 1.75rem; margin-bottom:1.25rem; }
.jmp-link-card-title { font-weight:700; color:var(--forest,#2D5016); font-size:.95rem; margin-bottom:.35rem; display:flex; align-items:center; gap:7px; }
.jmp-link-card-desc  { font-size:.83rem; color:var(--ink-soft,#3d3d3d); margin-bottom:1rem; line-height:1.55; }
.jmp-link-row  { display:flex; gap:.5rem; align-items:center; flex-wrap:wrap; }
.jmp-link-input { flex:1; padding:.6rem .9rem; border:1.5px solid var(--sage-light,#c4d9ae); border-radius:var(--r-md,12px); font-size:.82rem; font-family:'Courier New',monospace; background:var(--white,#fff); color:var(--forest,#2D5016); outline:none; min-width:0; }
.jmp-copy-feedback { font-size:.75rem; color:var(--forest,#2D5016); font-weight:600; min-height:16px; margin-top:.35rem; }

/* Feature grid (overview) */
.jmp-features-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.jmp-feature-card { border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-lg,20px); padding:1.25rem; background:var(--white,#fff); }
.jmp-feature-card .icon { font-size:1.4rem; margin-bottom:.6rem; }
.jmp-feature-card h4 { font-size:.875rem; font-weight:700; margin-bottom:.35rem; }
.jmp-feature-card p  { font-size:.8rem; color:var(--ink-muted,#6b6b6b); line-height:1.5; }

/* Media row */
.jmp-media-row { display:grid; grid-template-columns:1fr 1fr; gap:1.25rem; margin-bottom:1.25rem; }
.jmp-media-label { font-size:.7rem; font-weight:700; text-transform:uppercase; letter-spacing:.07em; color:var(--ink-muted,#6b6b6b); margin-bottom:.6rem; }
.jmp-media-preview { border:1.5px dashed var(--border,#d4cfc5); border-radius:var(--r-md,12px); overflow:hidden; background:var(--cream,#f5f2eb); display:flex; align-items:center; justify-content:center; margin-bottom:.6rem; }
.jmp-media-preview.logo  { height:76px; }
.jmp-media-preview.photo { height:96px; }
.jmp-media-preview img { width:100%; height:100%; object-fit:contain; }
.jmp-media-preview.photo img { object-fit:cover; }
.jmp-media-placeholder { font-size:1.75rem; opacity:.4; }
.jmp-media-btns { display:flex; gap:.4rem; flex-wrap:wrap; }

/* Jummah blocks */
.jmp-jummah-block { border:1.5px solid var(--border-light,#e8e4dc); border-radius:var(--r-lg,20px); overflow:hidden; margin-bottom:.85rem; }
.jmp-jummah-block:last-child { margin-bottom:0; }
.jmp-jummah-head { background:var(--parchment,#e8e2d6); padding:.65rem 1.1rem; display:flex; align-items:center; gap:.6rem; border-bottom:1px solid var(--border-light,#e8e4dc); font-size:.82rem; font-weight:700; color:var(--ink-soft,#3d3d3d); }
.jmp-jummah-num  { width:24px; height:24px; border-radius:50%; background:var(--forest,#2D5016); color:#fff; display:flex; align-items:center; justify-content:center; font-size:.7rem; font-weight:700; flex-shrink:0; }
.jmp-jummah-fields { padding:1rem 1.1rem; display:grid; grid-template-columns:1fr 1fr; gap:.85rem; }

/* Hours rows */
#jmp-hours-rows { display:flex; flex-direction:column; gap:.5rem; margin-bottom:.85rem; }
.jmp-hours-row { display:grid; grid-template-columns:110px 1fr 100px 14px 100px 1fr 30px; align-items:center; gap:.5rem; background:var(--cream,#f5f2eb); border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-md,12px); padding:.6rem .75rem; }
.jmp-hours-sep { text-align:center; color:var(--ink-muted,#6b6b6b); font-size:.85rem; }
.jmp-hours-row select,
.jmp-hours-row input[type="text"],
.jmp-hours-row input[type="time"] { padding:.45rem .6rem; border:1.5px solid var(--border,#d4cfc5); border-radius:var(--r-sm,6px); font-size:.8rem; font-family:var(--font-body,inherit); background:var(--white,#fff); outline:none; width:100%; }
.jmp-hours-row select:focus,
.jmp-hours-row input:focus { border-color:var(--forest,#2D5016); }
.jmp-hours-remove { width:28px; height:28px; border-radius:50%; border:1px solid var(--border,#d4cfc5); background:var(--white,#fff); color:var(--ink-muted,#6b6b6b); cursor:pointer; font-size:.7rem; display:flex; align-items:center; justify-content:center; transition:all var(--trans,250ms ease); flex-shrink:0; }
.jmp-hours-remove:hover { background:#fef2f2; border-color:#fca5a5; color:#991b1b; }
.jmp-hours-actions { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:.5rem; padding-top:.75rem; border-top:1px solid var(--border-light,#e8e4dc); }

/* Form footers */
.jmp-form-footer { display:flex; align-items:center; gap:1rem; margin-top:1.5rem; padding-top:1.25rem; border-top:1px solid var(--border-light,#e8e4dc); }
.jmp-inline-msg { font-size:.82rem; border-radius:var(--r-sm,6px); padding:.5rem .85rem; display:none; }
.jmp-inline-msg--success { background:#ecfdf5; color:#065f46; border:1px solid #a7f3d0; }
.jmp-inline-msg--error   { background:#fef2f2; color:#991b1b; border:1px solid #fca5a5; }

/* Refer "why" grid */
.jmp-why-grid { display:grid; grid-template-columns:1fr 1fr; gap:.85rem; }
.jmp-why-item { display:flex; gap:.75rem; align-items:flex-start; }
.jmp-why-item .icon { font-size:1.05rem; line-height:1.3; flex-shrink:0; margin-top:1px; }
.jmp-why-item p      { font-size:.83rem; color:var(--ink-soft,#3d3d3d); line-height:1.45; margin:0; }
.jmp-why-item strong { display:block; font-weight:700; font-size:.85rem; margin-bottom:2px; }

/* Empty states */
.jmp-empty { text-align:center; padding:3rem 2rem; }
.jmp-empty .icon { font-size:2.2rem; margin-bottom:.75rem; }
.jmp-empty p { font-size:.875rem; color:var(--ink-muted,#6b6b6b); margin-bottom:1rem; }

/* ================================================================
   PUBLIC PROFILE — Announcements Section
   ================================================================ */

.jmp-profile-anns { margin-top: 2.5rem; }
.jmp-profile-anns .eyebrow { display:block; font-size:.68rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--moss,#4a7c2a); margin-bottom:.5rem; }
.jmp-profile-anns-title { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:clamp(1.4rem,4vw,2rem); font-weight:600; color:var(--ink,#1a1a1a); margin-bottom:.4rem; letter-spacing:-.01em; }
.jmp-profile-anns-sub   { font-size:.875rem; color:var(--ink-muted,#6b6b6b); margin-bottom:1.5rem; line-height:1.6; }

.jmp-ann-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
@media (max-width:900px) { .jmp-ann-cards { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px) { .jmp-ann-cards { grid-template-columns:1fr; } }

.jmp-ann-card {
  background:var(--white,#fff);
  border:1px solid var(--border-light,#e8e4dc);
  border-radius:var(--r-xl,28px);
  padding:1.25rem;
  display:flex;
  flex-direction:column;
  gap:.75rem;
  transition:all var(--trans,250ms ease);
  position:relative;
  overflow:hidden;
  text-decoration:none;
  color:inherit;
  cursor:pointer;
}
.jmp-ann-card::after { content:''; position:absolute; inset:0 0 auto 0; height:3px; background:linear-gradient(90deg,var(--forest,#2D5016),var(--sage,#8aad6b)); opacity:0; transition:opacity var(--trans,250ms ease); }
.jmp-ann-card:hover { box-shadow:var(--shadow-lg,0 12px 40px rgba(45,80,22,.14)); transform:translateY(-3px); border-color:var(--sage-light,#c4d9ae); }
.jmp-ann-card:hover::after { opacity:1; }

.jmp-ann-card-inna { font-family:var(--font-arabic,'Amiri',serif); font-size:.78rem; color:var(--moss,#4a7c2a); direction:rtl; opacity:.75; }
.jmp-ann-card-name { font-family:var(--font-display,'Cormorant Garamond',serif); font-size:1.15rem; font-weight:600; color:var(--ink,#1a1a1a); line-height:1.2; }
.jmp-ann-card-name-ar { font-family:var(--font-arabic,'Amiri',serif); font-size:.9rem; color:var(--ink-muted,#6b6b6b); direction:rtl; }
.jmp-ann-card-dop { font-size:.78rem; color:var(--ink-muted,#6b6b6b); }

.jmp-ann-card-detail { display:flex; flex-direction:column; gap:.35rem; font-size:.78rem; color:var(--ink-muted,#6b6b6b); }
.jmp-ann-card-detail-row { display:flex; align-items:flex-start; gap:.4rem; }
.jmp-ann-card-detail-row svg { flex-shrink:0; margin-top:1px; color:var(--moss,#4a7c2a); width:13px; height:13px; }

.jmp-ann-card-foot {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-top:.75rem;
  border-top:1px solid var(--border-light,#e8e4dc);
  font-size:.72rem;
  color:var(--ink-muted,#6b6b6b);
  margin-top:auto;
}
.jmp-ann-card-foot a { color:var(--forest,#2D5016); font-weight:600; text-decoration:none; }
.jmp-ann-card-foot a:hover { text-decoration:underline; }

.jmp-ann-card-photo { width:100%; height:110px; object-fit:cover; border-radius:var(--r-md,12px); display:block; }
.jmp-ann-card-no-photo { width:100%; height:80px; border-radius:var(--r-md,12px); background:linear-gradient(135deg,var(--parchment,#e8e2d6),var(--sage-light,#c4d9ae)); display:flex; align-items:center; justify-content:center; font-size:1.6rem; }

.jmp-ann-empty { grid-column:1/-1; text-align:center; padding:3rem 2rem; background:var(--white,#fff); border:1px solid var(--border-light,#e8e4dc); border-radius:var(--r-xl,28px); }
.jmp-ann-empty .icon { font-size:2rem; margin-bottom:.75rem; }
.jmp-ann-empty p { color:var(--ink-muted,#6b6b6b); font-size:.9rem; }

.jmp-load-more { text-align:center; margin-top:1.5rem; }

/* ================================================================
   RESPONSIVE
   ================================================================ */
@media (max-width:720px) {
  .jmp-fields-2,.jmp-fields-3 { grid-template-columns:1fr; }
  .jmp-stats        { grid-template-columns:1fr 1fr; }
  .jmp-media-row    { grid-template-columns:1fr; }
  .jmp-features-grid { grid-template-columns:1fr; }
  .jmp-why-grid     { grid-template-columns:1fr; }
  .jmp-jummah-fields { grid-template-columns:1fr; }
  .jmp-hours-row    { grid-template-columns:1fr 1fr 28px; gap:.4rem; }
  .jmp-hours-row select { grid-column:1/-1; }
  .jmp-hours-sep    { display:none; }
  .jmp-steps::before { display:none; }
  .jmp-step-label   { display:none; }
}
@media (max-width:480px) {
  .jmp-hero-banner  { border-radius:var(--r-lg,20px); }
  .jmp-card         { border-radius:var(--r-lg,20px); }
  .jmp-tabs         { border-radius:var(--r-md,12px); }
  .jmp-stats        { grid-template-columns:1fr; }
  .jmp-dash-head    { border-radius:var(--r-lg,20px); }
}
