/* ==========================================================================
   Mokawala Programmes Registry CSS (Quiet Decision OS)
   ========================================================================== */

/* Container & Spacing */
.mkw-programmes-archive,
.mkw-programme-detail {
  padding-top: var(--mkw-sp-40, 24px);
  padding-bottom: var(--mkw-sp-80, 80px);
}

/* Breadcrumbs */
.mkw-programmes-breadcrumb,
.mkw-programme-breadcrumb {
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  font-size: var(--mkw-ui, 14px);
  color: var(--mkw-text-muted, #62605C);
  list-style: none;
  padding: 0;
  margin: 0;
}

.mkw-breadcrumb__list a {
  color: var(--mkw-text-muted, #62605C);
  text-decoration: none;
  transition: color 0.15s ease;
}

.mkw-breadcrumb__list a:hover {
  color: var(--mkw-ink, #171717);
}

.mkw-breadcrumb-sep {
  color: var(--mkw-border, #DDD8D0);
}

.mkw-breadcrumb-current {
  color: var(--mkw-ink, #171717);
  font-weight: 500;
}

/* --------------------------------------------------------------------------
   Archive / Directory Page Styles
   -------------------------------------------------------------------------- */
.mkw-programmes-header {
  margin-bottom: var(--mkw-sp-40, 24px);
}

.mkw-programmes-title {
  font-size: var(--mkw-h1, 36px);
  font-weight: 600;
  line-height: 1.25;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-programmes-intro {
  font-size: var(--mkw-body-ar, 17px);
  line-height: 1.6;
  color: var(--mkw-text-muted, #62605C);
  max-width: 820px;
  margin: 0;
}

/* Filter Form */
.mkw-programmes-filter-section {
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-30, 16px);
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-programmes-filter-form {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-sp-20, 8px);
  align-items: flex-end;
}

@media (min-width: 640px) {
  .mkw-programmes-filter-form {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .mkw-programmes-filter-form {
    grid-template-columns: 2fr 1.5fr 1.5fr 1fr auto;
  }
}

.mkw-filter-field {
  display: flex;
  flex-direction: column;
}

.mkw-filter-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.mkw-programmes-count {
  font-size: var(--mkw-ui, 14px);
  color: var(--mkw-text-muted, #62605C);
  margin-bottom: var(--mkw-sp-30, 16px);
}

/* Programmes Cards Grid */
.mkw-programmes-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-grid-gap, 16px);
}

@media (min-width: 768px) {
  .mkw-programmes-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1100px) {
  .mkw-programmes-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.mkw-programme-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-40, 24px);
  transition: border-color 0.15s ease;
}

.mkw-programme-card:hover {
  border-color: var(--mkw-ink, #171717);
}

.mkw-programme-card__meta-top {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-programme-card__title {
  font-size: var(--mkw-h3, 22px);
  font-weight: 600;
  line-height: 1.35;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-programme-card__title a {
  color: var(--mkw-ink, #171717);
  text-decoration: none;
}

.mkw-programme-card__title a:hover {
  color: var(--mkw-accent, #F25A24);
}

.mkw-programme-card__summary {
  font-size: var(--mkw-ui, 14px);
  line-height: 1.6;
  color: var(--mkw-text-muted, #62605C);
  flex-grow: 1;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-programme-card__facts {
  border-top: 1px solid var(--mkw-border, #DDD8D0);
  padding-top: var(--mkw-sp-20, 8px);
  margin-bottom: var(--mkw-sp-30, 16px);
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mkw-programme-card__fact-item {
  display: flex;
  justify-content: space-between;
  font-size: 13px;
}

.mkw-programme-card__fact-label {
  color: var(--mkw-text-muted, #62605C);
}

.mkw-programme-card__fact-value {
  color: var(--mkw-ink, #171717);
  font-weight: 500;
}

.mkw-programme-card__footer {
  margin-top: auto;
}

/* --------------------------------------------------------------------------
   Single Programme Detail Page Styles
   -------------------------------------------------------------------------- */
.mkw-programme-header-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-programme-verified {
  font-size: var(--mkw-ui, 14px);
  color: var(--mkw-text-muted, #62605C);
}

.mkw-programme-header {
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-programme-title {
  font-size: var(--mkw-h1, 40px);
  font-weight: 600;
  line-height: 1.25;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-10, 4px);
}

.mkw-programme-official-name {
  font-size: var(--mkw-body, 16px);
  color: var(--mkw-text-muted, #62605C);
  font-family: var(--mkw-font-latin, 'Inter', sans-serif);
  direction: ltr;
  text-align: right;
  margin: 0;
}

.mkw-programme-summary {
  background: var(--mkw-surface-soft, #F0ECE6);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-30, 16px) var(--mkw-sp-40, 24px);
  margin-bottom: var(--mkw-sp-40, 24px);
}

.mkw-programme-lead {
  font-size: var(--mkw-body-ar, 17px);
  line-height: 1.7;
  color: var(--mkw-ink, #171717);
  margin: 0;
}

/* Quick Facts */
.mkw-programme-facts-wrap {
  margin-bottom: var(--mkw-sp-50, 32px);
}

.mkw-fact-value--text {
  font-size: 16px;
  font-weight: 600;
}

/* Content Sections */
.mkw-programme-content-sections {
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-40, 24px);
}

.mkw-programme-section {
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-40, 24px);
}

.mkw-programme-section-title {
  font-size: var(--mkw-h3, 22px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 8px);
  padding-bottom: var(--mkw-sp-20, 8px);
  border-bottom: 1px solid var(--mkw-surface-soft, #F0ECE6);
}

.mkw-programme-section-body {
  font-size: var(--mkw-body-ar, 17px);
  line-height: 1.7;
  color: var(--mkw-ink, #171717);
}

.mkw-programme-section-body p {
  margin: 0 0 var(--mkw-sp-20, 8px);
}

.mkw-programme-section-body p:last-child {
  margin-bottom: 0;
}

.mkw-programme-channel {
  background: var(--mkw-surface-soft, #F0ECE6);
  border-radius: var(--mkw-radius-input, 12px);
  padding: var(--mkw-sp-20, 8px) var(--mkw-sp-30, 16px);
  margin-top: var(--mkw-sp-20, 8px);
  font-size: var(--mkw-ui, 14px);
}

/* Official Source Block */
.mkw-source-block {
  padding: 20px 24px;
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  margin-top: var(--mkw-sp-30, 16px);
}

.mkw-source-label {
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--mkw-text-muted, #62605C);
  margin-bottom: 4px;
}

.mkw-source-name {
  font-weight: 600;
  font-size: 16px;
  color: var(--mkw-ink, #171717);
  margin-bottom: 6px;
}

.mkw-source-url {
  color: var(--mkw-accent, #F25A24);
  word-break: break-all;
  font-size: 14px;
  text-decoration: none;
}

.mkw-source-url:hover {
  text-decoration: underline;
}

/* --------------------------------------------------------------------------
   Programme Page Engine V2 Layers
   -------------------------------------------------------------------------- */

/* Quick Decision Summary */
.mkw-programme-decision-summary {
  margin-bottom: var(--mkw-sp-40, 24px);
}

.mkw-decision-summary-card {
  background: var(--mkw-surface-soft, #F0ECE6);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-30, 16px) var(--mkw-sp-40, 24px);
}

.mkw-decision-summary-title {
  font-size: var(--mkw-h3, 20px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 12px);
}

.mkw-decision-summary-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-sp-20, 12px);
}

@media (min-width: 640px) {
  .mkw-decision-summary-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.mkw-decision-summary-item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.mkw-decision-summary-item--full {
  grid-column: 1 / -1;
  border-top: 1px solid var(--mkw-border, #DDD8D0);
  padding-top: var(--mkw-sp-20, 8px);
}

.mkw-decision-summary-label {
  font-size: var(--mkw-ui, 13px);
  color: var(--mkw-text-muted, #62605C);
}

.mkw-decision-summary-val {
  font-size: var(--mkw-body-ar, 15px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
}

/* Official Facts Layer Header */
.mkw-official-facts-layer {
  margin-bottom: var(--mkw-sp-40, 24px);
}

.mkw-facts-layer-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-facts-layer-badge {
  display: inline-block;
  font-size: var(--mkw-ui, 13px);
  font-weight: 600;
  padding: 4px 12px;
  border-radius: var(--mkw-radius-pill, 9999px);
  background: var(--mkw-surface-soft, #F0ECE6);
  color: var(--mkw-text-muted, #62605C);
}

.mkw-facts-layer-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin: 0;
}

/* D. Expert Analysis — Adil Miftah */
.mkw-expert-section {
  background: var(--mkw-surface, #FFFFFF);
  border: 2px solid var(--mkw-ink, #171717);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-40, 24px) var(--mkw-sp-50, 32px);
  margin-top: var(--mkw-sp-50, 32px);
  position: relative;
}

.mkw-expert-badge {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: var(--mkw-ink, #171717);
  color: #FFFFFF;
  padding: 4px 12px;
  border-radius: var(--mkw-radius-pill, 9999px);
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-expert-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-expert-author {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: var(--mkw-sp-20, 12px);
  font-size: var(--mkw-ui, 14px);
  color: var(--mkw-text-muted, #62605C);
}

.mkw-expert-author__name {
  font-weight: 600;
  color: var(--mkw-ink, #171717);
}

.mkw-expert-author__role {
  color: var(--mkw-text-muted, #62605C);
}

.mkw-expert-author__date {
  font-size: 13px;
  color: var(--mkw-text-muted, #62605C);
}

.mkw-expert-disclosure {
  font-size: 13px;
  color: var(--mkw-text-muted, #62605C);
  background: var(--mkw-surface-soft, #F0ECE6);
  padding: 8px 16px;
  border-radius: var(--mkw-radius-btn, 8px);
  margin-bottom: var(--mkw-sp-40, 24px);
}

.mkw-expert-content {
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-30, 16px);
}

.mkw-expert-block {
  background: var(--mkw-surface-soft, #F0ECE6);
  border-radius: var(--mkw-radius-input, 12px);
  padding: var(--mkw-sp-30, 16px) var(--mkw-sp-40, 20px);
}

.mkw-expert-block__title {
  font-size: var(--mkw-h3, 18px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-10, 6px);
}

.mkw-expert-block__body {
  font-size: var(--mkw-body-ar, 16px);
  line-height: 1.65;
  color: var(--mkw-ink, #171717);
}

.mkw-expert-block__body p {
  margin: 0;
}

/* E. Office Case / Story */
.mkw-case-section {
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-40, 24px) var(--mkw-sp-50, 32px);
  margin-top: var(--mkw-sp-50, 32px);
}

.mkw-case-eyebrow {
  font-size: var(--mkw-ui, 13px);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--mkw-accent, #F25A24);
  margin-bottom: var(--mkw-sp-10, 4px);
}

.mkw-case-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-20, 8px);
}

.mkw-case-hook {
  font-size: var(--mkw-body-ar, 16px);
  line-height: 1.6;
  color: var(--mkw-text-muted, #62605C);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-case-disclosure {
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-case-narrative {
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-30, 16px);
}

.mkw-case-step {
  border-right: 3px solid var(--mkw-border, #DDD8D0);
  padding-right: var(--mkw-sp-30, 16px);
}

.mkw-case-step__title {
  font-size: var(--mkw-h3, 17px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: 4px;
}

.mkw-case-step__body {
  font-size: var(--mkw-body-ar, 15px);
  line-height: 1.6;
  color: var(--mkw-text-muted, #62605C);
}

.mkw-case-step__body p {
  margin: 0;
}

/* F. FAQ */
.mkw-faq-section {
  margin-top: var(--mkw-sp-50, 32px);
}

.mkw-faq-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-faq-list {
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-20, 10px);
}

.mkw-faq-item {
  background: var(--mkw-surface, #FFFFFF);
}

/* G. Related Programmes */
.mkw-related-section {
  margin-top: var(--mkw-sp-60, 40px);
}

.mkw-related-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-related-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-grid-gap, 16px);
}

@media (min-width: 640px) {
  .mkw-related-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1024px) {
  .mkw-related-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.mkw-programme-card--compact {
  padding: var(--mkw-sp-30, 16px);
}

/* H. Tools / Simulator */
.mkw-tools-section {
  margin-top: var(--mkw-sp-60, 40px);
}

.mkw-tools-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-tools-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-grid-gap, 16px);
}

@media (min-width: 640px) {
  .mkw-tools-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.mkw-tool-card {
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-30, 20px);
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-20, 12px);
  align-items: flex-start;
}

.mkw-tool-card__title {
  font-size: var(--mkw-h3, 18px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin: 0;
}

/* I. Office Services */
.mkw-services-section {
  margin-top: var(--mkw-sp-60, 40px);
}

.mkw-services-title {
  font-size: var(--mkw-h2, 26px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin-top: 0;
  margin-bottom: var(--mkw-sp-30, 16px);
}

.mkw-services-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--mkw-grid-gap, 16px);
}

@media (min-width: 640px) {
  .mkw-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.mkw-service-card {
  background: var(--mkw-surface, #FFFFFF);
  border: 1px solid var(--mkw-border, #DDD8D0);
  border-radius: var(--mkw-radius-card, 16px);
  padding: var(--mkw-sp-40, 24px);
  display: flex;
  flex-direction: column;
  gap: var(--mkw-sp-20, 12px);
}

.mkw-service-card__title {
  font-size: var(--mkw-h3, 18px);
  font-weight: 600;
  color: var(--mkw-ink, #171717);
  margin: 0;
}

.mkw-service-card__reason {
  font-size: var(--mkw-ui, 14px);
  line-height: 1.5;
  color: var(--mkw-text-muted, #62605C);
  margin: 0;
  flex-grow: 1;
}

/* J. Official Source Section */
.mkw-official-source-section {
  margin-top: var(--mkw-sp-40, 24px);
}

