/* =====================================================================
   Noor — content.css
   Typography & elements for CMS content rendered into $content_for_layout
   (page bodies, notices, results, profiles). Scoped under .nr-content.
   ===================================================================== */

.nr-content{ font-size:16.5px; color:var(--nr-ink); }

.nr-content h1{ font-family:var(--nr-display); font-weight:700; font-size:33px; margin:0 0 14px; color:var(--nr-green-900); }
.nr-content h2{ font-family:var(--nr-display); font-weight:700; font-size:25px; margin:26px 0 12px; color:var(--nr-green-900);
  padding-bottom:8px; border-bottom:1px solid var(--nr-line); }
.nr-content h3{ font-family:var(--nr-display); font-weight:700; font-size:21px; margin:22px 0 10px; color:var(--nr-green-700); }
.nr-content h4{ font-family:var(--nr-body); font-weight:700; font-size:14px; letter-spacing:.05em; text-transform:uppercase; margin:18px 0 8px; color:var(--nr-gold-deep); }
.nr-content h1:lang(bn),.nr-content h2:lang(bn),.nr-content h3:lang(bn){ font-family:var(--nr-bn); }
.nr-content p{ margin:0 0 15px; }
.nr-content a{ color:var(--nr-green-700); text-decoration:underline; text-underline-offset:2px; text-decoration-color:var(--nr-gold); }
.nr-content a:hover{ color:var(--nr-gold-deep); }
.nr-content :lang(bn){ font-family:var(--nr-bn); }
.nr-content :lang(ar){ font-family:var(--nr-ar); direction:rtl; }
.nr-content code{ background:var(--nr-cream-2); padding:2px 7px; border-radius:5px; font-size:.9em; color:var(--nr-green-700); }

/* Arabic ayah / quote block */
.nr-content .ayah, .nr-content blockquote[lang="ar"]{ font-family:var(--nr-ar); direction:rtl; font-size:26px;
  color:var(--nr-green-900); text-align:center; margin:22px 0; }

/* Lists — 8-point-star bullets */
.nr-content ul{ list-style:none; margin:0 0 16px; padding-left:6px; }
.nr-content ul > li{ position:relative; padding-left:24px; margin:7px 0; }
.nr-content ul > li::before{ content:""; position:absolute; left:3px; top:9px; width:8px; height:8px;
  border:1.5px solid var(--nr-gold); transform:rotate(45deg); }
.nr-content ol{ margin:0 0 16px; padding-left:22px; }
.nr-content ol > li{ margin:7px 0; }
.nr-content ol > li::marker{ color:var(--nr-gold-deep); font-family:var(--nr-display); font-weight:700; }

/* Blockquote */
.nr-content blockquote{ margin:22px 0; padding:6px 0 6px 22px; border-left:3px solid var(--nr-gold);
  font-family:var(--nr-display); font-style:italic; font-size:20px; color:var(--nr-green-700); }

/* Images */
.nr-content img{ border-radius:6px; }
.nr-content figure{ margin:20px 0; }
.nr-content figcaption{ color:var(--nr-muted); font-family:var(--nr-display); font-style:italic; font-size:14px; margin-top:6px; text-align:center; }

/* Tables — results, rosters */
.nr-content table{ width:100%; border-collapse:collapse; margin:18px 0; font-size:14.5px; border:1px solid var(--nr-line); }
.nr-content thead th{ background:var(--nr-green); color:#fff; text-align:left; font-family:var(--nr-body);
  font-weight:600; font-size:12.5px; letter-spacing:.05em; text-transform:uppercase; padding:11px 14px; }
.nr-content tbody td, .nr-content tbody th{ padding:10px 14px; border-top:1px solid var(--nr-line); vertical-align:top; }
.nr-content tbody tr:nth-child(even){ background:var(--nr-cream-2); }
.nr-content tbody tr:hover{ background:#eae2cb; }

/* Definition-style profile rows */
.nr-content dl{ display:grid; grid-template-columns:180px 1fr; gap:0; margin:16px 0; border-top:1px solid var(--nr-line); }
.nr-content dt{ font-weight:700; color:var(--nr-green-700); padding:9px 12px 9px 0; border-bottom:1px solid var(--nr-line); }
.nr-content dd{ margin:0; padding:9px 0; border-bottom:1px solid var(--nr-line); }

/* Bare CakePHP scaffold forms */
.nr-content input[type="text"], .nr-content input[type="email"], .nr-content input[type="password"],
.nr-content input[type="number"], .nr-content input[type="date"], .nr-content select, .nr-content textarea{
  width:100%; max-width:420px; padding:11px 13px; font:inherit; color:var(--nr-ink);
  background:#fff; border:1px solid var(--nr-line); border-radius:6px; outline:none; }
.nr-content textarea{ max-width:100%; }
.nr-content input:focus, .nr-content select:focus, .nr-content textarea:focus{
  border-color:var(--nr-gold); box-shadow:0 0 0 3px rgba(201,162,51,.2); }
.nr-content label{ display:block; font-weight:700; margin:14px 0 5px; color:var(--nr-green-700);
  font-size:12.5px; letter-spacing:.04em; text-transform:uppercase; }

.nr-content input[type="submit"], .nr-content button:not(.btn):not(.btnSearchGo):not(.btnSearchDD), .nr-content .submit input{
  display:inline-block; cursor:pointer; font-family:var(--nr-body); font-weight:700; font-size:12.5px; letter-spacing:.06em; text-transform:uppercase;
  background:var(--nr-green); color:#fff; border:1px solid var(--nr-green); padding:11px 24px; border-radius:6px; margin-top:10px; transition:background .18s ease; }
.nr-content input[type="submit"]:hover, .nr-content .submit input:hover{ background:var(--nr-green-700); }

.nr-content .error-message, .nr-content .error{ color:#a4443a; font-size:13px; margin:4px 0 0; }

@media (max-width:575px){
  .nr-content{ font-size:16px; }
  .nr-content dl{ grid-template-columns:1fr; }
  .nr-content dt{ padding-bottom:0; border-bottom:0; }
  .nr-content dd{ padding-top:2px; }
}
