
/* shared/enhancements.css */
.section-navigation{display:flex;flex-wrap:wrap;gap:0;margin:0 0 30px;padding:0;border-block:1px solid var(--line);font-size:13px}.section-navigation a{color:inherit;text-decoration:none;padding:12px 18px;border-inline-end:1px solid var(--line)}.section-navigation .is-active{color:var(--hover-accent,#a0684b)}.detail-nav a{display:block;border-bottom:1px solid var(--line);padding-block:14px}.format-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:4px 0 12px;font-size:12px}.format-tools label{display:flex;gap:4px;align-items:center}.format-tools input[type=number]{width:65px!important;padding:4px!important}.format-tools input[type=color]{width:32px!important;height:28px!important;padding:0!important}.format-tools input[type=checkbox]{width:auto!important}.format-tools button{border:1px solid var(--line,#aaa);border-radius:3px;background:transparent;color:inherit;padding:5px 8px}.managed-editor{padding:24px;border:1px solid var(--line,#bbb);margin:24px 0}.managed-editor input,.managed-editor select,.managed-editor textarea{width:100%;padding:10px;background:transparent;color:inherit;border:1px solid var(--line,#bbb);font:inherit;box-sizing:border-box}.managed-editor label{display:block;margin:10px 0}.managed-editor textarea{min-height:100px}.managed-editor button,.managed-editor .btn{padding:9px 14px;margin:5px;border:1px solid var(--line,#bbb);background:transparent;color:inherit;cursor:pointer}.managed-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.managed-status{white-space:pre-wrap}.civil-entry{border-bottom:1px solid var(--line);padding:20px 0}.civil-entry summary{cursor:pointer;font-size:18px}.civil-entry-copy{white-space:pre-wrap;line-height:2;margin-top:18px}.civil-entry img{max-width:100%;max-height:400px;object-fit:contain}@media(max-width:640px){.managed-grid{grid-template-columns:1fr}.section-navigation a{padding:10px;font-size:12px}}
.with-section-nav{display:grid!important;grid-template-columns:170px minmax(0,1fr);gap:32px;align-items:start}.with-section-nav>.section-navigation{display:block;position:sticky;top:24px;border:0;margin:0}.with-section-nav>.section-navigation a{display:block;padding:14px 0;border-inline:0;border-bottom:1px solid var(--line);line-height:1.8}.section-content{min-width:0}@media(max-width:760px){.with-section-nav{grid-template-columns:1fr!important;gap:22px}.with-section-nav>.section-navigation{position:static;display:flex;flex-wrap:wrap}.with-section-nav>.section-navigation a{padding:10px;border-inline-end:1px solid var(--line)}}.rich-dialog{width:min(800px,90vw);max-height:85vh;border:1px solid var(--line,#aaa);background:var(--bg,#fff);color:var(--fg,#222);padding:24px;font:inherit}.rich-dialog::backdrop{background:#0008}.rich-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-block:10px}.rich-toolbar label{display:flex;align-items:center;gap:8px}.rich-toolbar input[type=number]{width:70px}.rich-toolbar input[type=color]{width:35px}.rich-toolbar button{padding:8px 12px;background:transparent;border:1px solid var(--line,#aaa);color:inherit;font:inherit;cursor:pointer}.rich-surface{min-height:200px;max-height:50vh;overflow:auto;white-space:pre-wrap;line-height:1.9;padding:20px;border:1px solid var(--line,#bbb);font-size:16px;outline-offset:3px}
/* v47: keep controls outlined across public pages and admin. */
html body button,html body .btn{background-color:transparent!important;background-image:none!important;box-shadow:none!important;border-width:1px!important;color:var(--fg,var(--text,inherit))!important}
html body button:hover,html body .btn:hover,html body button:focus-visible,html body .btn:focus-visible{color:var(--hover-accent,#a76a45)!important}
html body button.is-active{background-color:transparent!important;color:var(--hover-accent,#a76a45)!important}


/* shared/header-canonical.css */
.site-header{
  width: 100%;
  max-width: var(--header-max);
  margin: 0 auto;
}
.brand-home-link{
  width: max-content;
  margin: 0 auto;
  display: block;
  transform: translateY(2px);
  color: var(--fg);
  text-decoration: none;
  direction: ltr;
  transition:
    opacity 180ms ease,
    color var(--theme-duration) var(--theme-ease);
}
.brand-home-link:hover{ opacity: .72; }
.brand-home-link:focus-visible{ outline: 1px solid currentColor; outline-offset: 6px; }
.brand-word{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .24em;
  font-family: var(--font-en);
  font-size: clamp(18px, 1.45vw, 22px);
  font-weight: 500;
  line-height: 1;
  letter-spacing: .02em;
  transform: translateZ(0);
  transition:
    gap 1.6s cubic-bezier(.22,.61,.36,1),
    opacity 1.05s ease;
  will-change: gap, opacity;
}
.brand-char{
  display: inline-block;
  transform: translate3d(0,0,0);
  transition: transform 1.6s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}
body.is-preload .brand-word{ gap: .40em; opacity: .82; }
body.is-preload .brand-char--1{ transform: translate3d(-4px,0,0); }
body.is-preload .brand-char--2{ transform: translate3d(-2px,0,0); }
body.is-preload .brand-char--3{ transform: translate3d(0,0,0); }
body.is-preload .brand-char--4{ transform: translate3d(2px,0,0); }
body.is-preload .brand-char--5{ transform: translate3d(4px,0,0); }
.nav-frame{
  position: relative;
  width: 100%;
  min-height: 50px;
  margin-top: clamp(26px, 3.5vh, 36px);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  display: flex;
  align-items: center;
  justify-content: center;
  transition:
    border-color var(--theme-duration) var(--theme-ease),
    background-color var(--theme-duration) var(--theme-ease);
}
.primary-nav{
  width: 100%;
  padding-inline: 78px;
}
.nav-list{
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 2.1vw, 28px);
  direction: ltr;
}
:is(html[lang="fa"], html[lang="ar"]) .nav-list{ direction: rtl; }
.nav-link{
  display: inline-block;
  color: var(--menu-text);
  text-decoration: none;
  white-space: nowrap;
  font-family: var(--font-en);
  font-size: clamp(11px, .91vw, 14px);
  font-weight: 400;
  line-height: 1.25;
  transition:
    color 180ms ease,
    opacity 180ms ease,
    transform 180ms ease;
}
:is(html[lang="fa"], html[lang="ar"]) .nav-link{
  font-family: var(--font-fa);
  font-size: clamp(12px, .94vw, 14.5px);
}
.nav-link:hover,
.nav-link:focus-visible{
  color: var(--hover-accent);
}
.nav-link:hover{ transform: translateY(-1px); }
.nav-link:focus-visible{
  outline: 1px solid currentColor;
  outline-offset: 5px;
}
.nav-link.is-current{ font-weight: 650; }
.language-button,
.theme-button,
.mobile-menu-button{
  appearance: none;
  border: 0;
  margin: 0;
  padding: 0;
  background: transparent;
  color: var(--fg);
  cursor: pointer;
  transition:
    color var(--theme-duration) var(--theme-ease),
    opacity 180ms ease,
    transform 180ms ease;
}
.language-button:hover,
.theme-button:hover,
.mobile-menu-button:hover{ opacity: .72; }
.language-button:focus-visible,
.theme-button:focus-visible,
.mobile-menu-button:focus-visible{
  outline: 1px solid currentColor;
  outline-offset: 4px;
}
.language-button{
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  min-width: 34px;
  padding: .2rem .35rem;
  font-size: .72rem;
  font-weight: 500;
  text-align: center;
  white-space: nowrap;
}
:is(html[lang="fa"], html[lang="ar"]) .language-button{
  font-family: var(--font-en);
  font-size: .75rem;
  letter-spacing: .04em;
}
.theme-button{
  position: absolute;
  right: 13px;
  top: 50%;
  width: 32px;
  height: 32px;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.theme-icon-wrap{
  position: relative;
  display: inline-flex;
  width: 15px;
  height: 15px;
  align-items: center;
  justify-content: center;
}
.theme-icon{
  position: absolute;
  inset: 0;
  margin: auto;
  width: 15px;
  height: 15px;
}
.theme-icon--moon{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: .9rem;
  line-height: 15px;
}
.emkan-sun{ display: block; overflow: visible; }
.theme-icon--sun{ display: none; }
html[data-theme="dark"] .theme-icon--moon{ display: none; }
html[data-theme="dark"] .theme-icon--sun{ display: block; }
.mobile-menu-button{ display: none; }
@media (min-width: 901px) and (max-width: 1180px){.nav-list{ gap: clamp(12px, 1.6vw, 20px); }
.nav-link{ font-size: 11.5px; }
:is(html[lang="fa"], html[lang="ar"]) .nav-link{ font-size: 12.5px; }}
@media (max-width: 900px){.site-header{ max-width: 720px; }
.brand-word{
    font-size: clamp(18px, 4.9vw, 21px);
    gap: .22em;
  }
.nav-frame{
    margin-top: 22px;
    min-height: 46px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    grid-template-areas:
      "lang toggle theme"
      "nav nav nav";
    align-items: center;
    overflow: hidden;
  }
.language-button,
  .theme-button{
    position: static;
    transform: none;
  }
.language-button{
    grid-area: lang;
    justify-self: start;
    margin-left: 7px;
  }
.theme-button{
    grid-area: theme;
    justify-self: end;
    margin-right: 7px;
  }
.mobile-menu-button{
    grid-area: toggle;
    justify-self: center;
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
  }
.mobile-menu-icon{
    position: relative;
    width: 18px;
    height: 10px;
    display: block;
  }
.mobile-menu-icon span{
    position: absolute;
    left: 0;
    width: 18px;
    height: 1px;
    background: currentColor;
    transform-origin: center;
    transition: transform .32s ease, top .32s ease;
  }
.mobile-menu-icon span:first-child{ top: 1px; }
.mobile-menu-icon span:last-child{ top: 8px; }
.site-header.is-nav-open .mobile-menu-icon span:first-child{
    top: 4.5px;
    transform: rotate(45deg);
  }
.site-header.is-nav-open .mobile-menu-icon span:last-child{
    top: 4.5px;
    transform: rotate(-45deg);
  }
.primary-nav{
    grid-area: nav;
    width: 100%;
    max-height: 0;
    overflow: hidden;
    padding-inline: 0;
    opacity: 0;
    transition:
      max-height .62s cubic-bezier(.22,.61,.36,1),
      opacity .34s ease;
  }
.site-header.is-nav-open .primary-nav{
    max-height: 390px;
    opacity: 1;
  }
.nav-list{
    max-width: none;
    padding: 8px 0 12px;
    display: flex;
    flex-direction: column;
    gap: 0;
    direction: inherit !important;
    border-top: 1px solid var(--line);
  }
.nav-list li{
    width: 100%;
    text-align: center;
  }
.nav-list li + li{ border-top: 1px solid var(--line); }
.nav-link,
  :is(html[lang="fa"], html[lang="ar"]) .nav-link{
    width: max-content;
    max-width: 88%;
    padding: 10px 4px;
    font-size: 12.5px;
    white-space: normal;
  }}
@media (max-width: 390px){.nav-frame{
    grid-template-columns: 44px minmax(0, 1fr) 44px;
  }
.language-button{
    min-width: 30px;
    font-size: .68rem;
    margin-left: 3px;
  }
:is(html[lang="fa"], html[lang="ar"]) .language-button{ font-size: .70rem; }
.theme-button{
    width: 30px;
    height: 30px;
    margin-right: 3px;
  }
.theme-icon-wrap,
  .theme-icon{
    width: 14px;
    height: 14px;
  }
.theme-icon--moon{
    font-size: .86rem;
    line-height: 14px;
  }}
@media (prefers-reduced-motion: reduce){body.is-preload .brand-word{ gap: .24em; opacity: 1; }
body.is-preload .brand-char{ transform: none !important; }}
@media (min-width: 1181px){.site-header{
    max-width: 680px;
  }
.brand-home-link{
    transform: translateY(5px);
  }
.nav-frame{
    min-height: 34px;
    margin-top: 14px;
  }
.primary-nav{
    padding-inline: 58px;
  }
.nav-list{
    gap: clamp(12px, 1.45vw, 20px);
  }}
html[lang="ar"] body,
html[lang="ar"] .nav-link,
html[lang="ar"] .category-button,
html[lang="ar"] .category-toggle{
  font-family: var(--font-fa);
  direction: rtl;
}
.language-button,
.theme-button{
  opacity: .46 !important;
}
.language-button:hover,
.theme-button:hover,
.language-button:focus-visible,
.theme-button:focus-visible{
  opacity: .82 !important;
}
.language-button{min-width:30px!important;width:30px!important;text-align:center!important;letter-spacing:.08em!important}
.language-popover{position:fixed;z-index:5000;display:flex;gap:0;border:1px solid var(--line);background:var(--bg);color:var(--fg);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.language-popover[hidden]{display:none!important}
.language-choice{min-width:34px;height:28px;padding:0 7px;border:0;border-inline-end:1px solid var(--line);background:transparent;color:var(--category-muted,var(--fg));font-family:var(--font-en);font-size:9px;letter-spacing:.08em;cursor:pointer}
.language-choice:last-child{border-inline-end:0}
.language-choice:hover,.language-choice:focus-visible,.language-choice.is-active{color:var(--hover-accent);outline:0}
.language-popover{display:none!important}
.language-rail{position:relative;display:inline-flex;align-items:center}
.language-button{min-width:30px!important;width:30px!important;text-align:center!important;letter-spacing:.10em!important;font-family:var(--font-en)!important}
.language-rail-options{position:absolute;top:50%;inset-inline-end:calc(100% + 8px);height:28px;display:flex;align-items:center;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(6px,-50%,0);transition:opacity .20s ease,transform .32s cubic-bezier(.22,.61,.36,1),visibility 0s linear .32s}
.language-rail-options::after{content:"";position:absolute;top:50%;inset-inline-end:-8px;width:8px;height:1px;background:var(--line)}
.language-rail.is-open .language-rail-options{opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,-50%,0);transition-delay:0s}
.language-rail-choice{position:relative;width:31px;height:28px;padding:0;border:0!important;background:transparent!important;color:var(--category-muted,var(--fg));font-family:var(--font-en)!important;font-size:9px;font-weight:500;line-height:28px;letter-spacing:.10em;text-align:center;cursor:pointer;transition:color .18s ease,opacity .18s ease}
.language-rail-choice + .language-rail-choice::before{content:"";position:absolute;inset-inline-start:0;top:8px;width:1px;height:12px;background:var(--line)}
.language-rail-choice:hover,.language-rail-choice:focus-visible{color:var(--hover-accent);outline:0}
@media(max-width:720px){.language-rail-options{top:calc(100% + 7px);inset-inline-end:0;transform:translate3d(0,-4px,0);background:var(--bg);border-top:1px solid var(--line)}
.language-rail.is-open .language-rail-options{transform:translate3d(0,0,0)}
.language-rail-options::after{display:none}}
.language-rail{display:contents!important}
.language-rail-options--floating{
  position:fixed!important;
  z-index:9000;
  display:flex;
  align-items:center;
  height:28px;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease;
}
.language-rail-options--floating[hidden]{display:none!important}
.language-rail-options--floating.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.language-rail-options--floating::before{
  content:"";
  position:absolute;
  top:50%;
  width:11px;
  height:1px;
  background:var(--line);
}
.language-rail-options--floating[data-side="right"]::before{right:100%}
.language-rail-options--floating[data-side="left"]::before{left:100%}
.language-rail-choice{
  position:relative;
  width:31px;
  height:28px;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--category-muted,var(--fg));
  font-family:var(--font-en)!important;
  font-size:9px;
  font-weight:500;
  line-height:28px;
  letter-spacing:.10em;
  text-align:center;
  cursor:pointer;
  transition:color .18s ease,opacity .18s ease;
}
.language-rail-choice + .language-rail-choice::before{
  content:"";
  position:absolute;
  inset-inline-start:0;
  top:8px;
  width:1px;
  height:12px;
  background:var(--line);
}
.language-rail-choice:hover,
.language-rail-choice:focus-visible{
  color:var(--hover-accent);
  outline:0;
}
html[lang="fa"] .language-button,
html[lang="ar"] .language-button{
  left:13px!important;
  right:auto!important;
}
.language-rail-options,
.language-rail-options--floating{display:none!important}
.language-stack-options{
  position:fixed!important;
  z-index:10000;
  width:32px;
  display:grid;
  grid-template-columns:1fr;
  align-items:center;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease;
}
.language-stack-options[hidden]{display:none!important}
.language-stack-options.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.language-stack-options::before{
  content:"";
  position:absolute;
  left:50%;
  width:1px;
  height:10px;
  transform:translateX(-50%);
  background:var(--line);
}
.language-stack-options[data-side="bottom"]::before{bottom:100%}
.language-stack-options[data-side="top"]::before{top:100%}
.language-stack-choice{
  position:relative;
  width:32px;
  height:27px;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:var(--bg)!important;
  color:var(--category-muted,var(--fg));
  font-family:var(--font-en)!important;
  font-size:9px;
  font-weight:500;
  line-height:27px;
  letter-spacing:.10em;
  text-align:center;
  cursor:pointer;
  transition:color .18s ease,opacity .18s ease;
}
.language-stack-choice + .language-stack-choice::before{
  content:"";
  position:absolute;
  left:8px;
  right:8px;
  top:0;
  height:1px;
  background:var(--line);
}
.language-stack-choice:hover,
.language-stack-choice:focus-visible{
  color:var(--hover-accent);
  outline:0;
}
html[lang="fa"] .language-button,
html[lang="ar"] .language-button{
  left:13px!important;
  right:auto!important;
}
.language-stack-options,
.language-rail-options,
.language-rail-options--floating,
.language-popover{display:none!important}
.language-button{
  left:13px!important;
  right:auto!important;
  top:50%;
  width:38px!important;
  min-width:38px!important;
  height:32px!important;
  padding:0!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  grid-template-rows:17px 5px!important;
  align-content:center!important;
  justify-items:center!important;
  gap:2px!important;
  overflow:hidden!important;
  font-family:var(--font-en)!important;
  background:transparent!important;
}
.language-code{
  display:block;
  min-width:24px;
  color:currentColor;
  font-size:9px;
  font-weight:520;
  line-height:17px;
  letter-spacing:.11em;
  text-align:center;
}
.language-steps{
  width:24px;
  height:3px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
}
.language-step{
  display:block;
  width:4px;
  height:1px;
  background:var(--line-strong,var(--line));
  opacity:.45;
  transition:width .22s ease,opacity .18s ease,background-color .18s ease;
}
.language-step.is-active{
  width:8px;
  opacity:.95;
  background:var(--hover-accent);
}
.language-button:hover .language-step.is-active,
.language-button:focus-visible .language-step.is-active{width:11px}
html[lang="fa"] .language-button,
html[lang="ar"] .language-button{
  left:13px!important;
  right:auto!important;
  direction:ltr!important;
}
.language-stack-options,.language-rail-options,.language-rail-options--floating,.language-popover,.language-steps{display:none!important}
.language-button{
  position:absolute!important;top:50%!important;left:auto!important;right:52px!important;
  width:48px!important;min-width:48px!important;height:32px!important;padding:0!important;
  transform:translateY(-50%)!important;display:inline-flex!important;align-items:center!important;
  justify-content:center!important;gap:5px!important;overflow:hidden!important;background:transparent!important;
  color:var(--fg)!important;direction:ltr!important;font-family:var(--font-en)!important
}
.language-globe{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;opacity:.72}
.language-code{font-size:8.5px;font-weight:520;letter-spacing:.08em;line-height:1}
.language-button:hover,.language-button:focus-visible{color:var(--hover-accent)!important;opacity:1!important}
.primary-nav{padding-inline:104px!important}
@media(max-width:900px){.nav-frame{grid-template-columns:56px minmax(0,1fr) 88px!important;grid-template-areas:"toggle toggle utilities" "nav nav nav"!important;overflow:visible!important}
.mobile-menu-button{grid-area:toggle!important;justify-self:start!important;margin-inline-start:8px!important}
.language-button{top:23px!important;right:43px!important}
.theme-button{position:absolute!important;top:23px!important;right:7px!important;left:auto!important;transform:translateY(-50%)!important}
.primary-nav{padding-inline:0!important}}
:where(.nav-link,.menu-item,.article-action,.map-link,.footerline-side a,.message-entry,.contact-signal-row,.people-group-button,.back-link,.category-button):hover,
:where(.nav-link,.menu-item,.article-action,.map-link,.footerline-side a,.message-entry,.contact-signal-row,.people-group-button,.back-link,.category-button):focus-visible{color:var(--hover-accent)!important;background:transparent!important}
.language-stack-options,.language-rail-options,.language-rail-options--floating,.language-popover,.language-steps,.language-globe{display:none!important}
.language-button{position:absolute!important;top:50%!important;left:12px!important;right:auto!important;width:auto!important;min-width:0!important;height:32px!important;padding:0 2px!important;transform:translateY(-50%)!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:0!important;overflow:visible!important;background:transparent!important;color:var(--category-muted,var(--fg))!important;direction:ltr!important;font-family:var(--font-en)!important;border:0!important;box-shadow:none!important}
.language-direct-choice{min-width:23px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--category-muted,var(--fg));font-size:8px;font-weight:500;line-height:1;letter-spacing:.08em;transition:color .18s ease}
.language-direct-divider{width:1px;height:11px;display:block;background:var(--line)}
.language-direct-choice:hover,.language-direct-choice.is-active{color:var(--hover-accent)!important}
.primary-nav{padding-inline:94px!important}
html[lang="fa"] .language-button,html[lang="ar"] .language-button{left:12px!important;right:auto!important;direction:ltr!important}
@media(max-width:900px){.nav-frame{display:grid!important;grid-template-columns:88px minmax(0,1fr) 48px!important;grid-template-areas:"lang toggle theme" "nav nav nav"!important;align-items:center!important;overflow:hidden!important}
.language-button{position:static!important;grid-area:lang!important;transform:none!important;justify-self:start!important;margin-left:5px!important}
.theme-button{position:static!important;grid-area:theme!important;transform:none!important;justify-self:end!important;margin-right:7px!important}
.mobile-menu-button{grid-area:toggle!important;justify-self:center!important;margin:0!important}
.primary-nav{padding-inline:0!important}}
:where(.nav-link,.menu-item,.category-button,.category-toggle,.article-title-button,.article-action,.people-group-button,.contact-signal-row,.message-entry,.map-link,.footerline-side a,.back-link,.theme-button,.language-button):hover,
:where(.nav-link,.menu-item,.category-button,.category-toggle,.article-title-button,.article-action,.people-group-button,.contact-signal-row,.message-entry,.map-link,.footerline-side a,.back-link,.theme-button,.language-button):focus-visible{color:var(--hover-accent)!important;background:transparent!important;box-shadow:none!important;outline:0!important}
:where(.nav-link,.menu-item,.category-button,.article-category-choice,.article-action,.practice-button,.people-group-button,.contact-signal-row,.message-entry,.map-link,.back-link):hover,
:where(.nav-link,.menu-item,.category-button,.article-category-choice,.article-action,.practice-button,.people-group-button,.contact-signal-row,.message-entry,.map-link,.back-link):focus-visible{
  color:var(--hover-accent)!important;
  background:transparent!important;
  box-shadow:none!important;
}
.language-direct-choice{opacity:.56!important;transition:opacity .18s ease,color .18s ease,font-weight .18s ease!important}
.language-direct-choice:hover,.language-direct-choice:focus-visible{opacity:.78!important;color:var(--hover-accent)!important}
.language-direct-choice.is-active{opacity:.96!important;color:var(--fg)!important;font-weight:560!important}

/* shared/unified-v50.css */
/* Shared search/filter language taken from Articles. Applies only to public controls. */
:root{--emkan-control-size:clamp(10.5px,.76vw,12px)}
:is(.project-search,.article-project-search,.podcast-search,.product-search){border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;padding:0!important}
:is(input[type=search],.v49-rail input,.product-tools select,.v49-rail select,.category-panel select,.podcast-controls select){box-sizing:border-box!important;width:100%;min-width:0;height:32px!important;padding:0 2px 2px!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;color:var(--category,var(--category-muted,var(--fg)))!important;font:inherit;font-size:var(--emkan-control-size)!important;font-weight:400!important;box-shadow:none!important;opacity:.78;transition:border-color .42s ease,opacity .42s ease!important}
:is(input[type=search],.v49-rail input,.product-tools select,.v49-rail select):hover,:is(input[type=search],.v49-rail input,.product-tools select,.v49-rail select):focus{border-bottom-color:var(--hover-accent)!important;opacity:1}
:is(.category-toggle,.article-category-toggle,.podcast-filter summary){min-height:32px!important;padding:7px 0!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--category-muted)!important;font:inherit;font-size:var(--emkan-control-size)!important;font-weight:400!important}
:is(.category-choice,.article-category-choice,.podcast-topics button,.podcast-seasons button){border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font:inherit;font-size:var(--emkan-control-size)!important;padding:9px 0!important}
:is(.article-project-search,.project-search) input[type=search]{padding-inline-end:26px!important}
:is(.v49-rail,.podcast-controls,.product-search)>label,.v49-rail label,.podcast-search #searchLabel{font-size:var(--emkan-control-size)!important;font-weight:400}
:is(.category-card,.project-card,.store-card,.product-card) img{filter:grayscale(100%)!important;opacity:.94!important;transform:scale(1.002)!important;transition:filter .62s ease,opacity .3s ease,transform .72s cubic-bezier(.22,.61,.36,1)!important}
:is(.category-card,.project-card,.store-card,.product-card):is(:hover,:focus-visible) img{filter:grayscale(0%)!important;opacity:1!important;transform:scale(1.018)!important}
.learning-workspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:48px;align-items:start;margin-top:32px;scroll-margin-top:24px}.learning-side{position:sticky;top:24px}.learning-location{font-size:10px!important;color:var(--category-muted);margin-bottom:18px!important}.learning-tree{position:relative;padding-inline-start:21px;display:flex;flex-direction:column;align-items:stretch;gap:0}.learning-tree::before{content:'';position:absolute;inset-inline-start:3px;top:12px;bottom:12px;width:1px;background:var(--line)}.learning-branch{position:relative;display:block;min-height:38px;box-sizing:border-box;text-align:start;border:0;padding:8px 0;background:transparent;color:var(--category-muted,var(--fg));font:inherit;font-size:11px;line-height:1.8;text-decoration:none;cursor:pointer;transition:color .18s ease}.learning-branch::before{content:'';position:absolute;inset-inline-start:-20px;top:50%;width:5px;height:5px;border:1px solid var(--line);background:var(--bg);transform:translateY(-50%) rotate(45deg);transition:border-color .18s ease,background-color .18s ease}.learning-branch:is(:hover,:focus-visible,.is-active){color:var(--hover-accent)}.learning-branch:is(:hover,:focus-visible,.is-active)::before{background:var(--hover-accent);border-color:var(--hover-accent)}.learning-branch:focus-visible{outline:1px solid var(--line);outline-offset:3px}.learning-panels{min-width:0}.learning-panels>.v49-section{padding-top:0;min-height:250px}.learning-next{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.learning-next .v49-button{border:0;border-bottom:1px solid var(--line);padding-inline:0}.learning-stages{display:grid;grid-template-columns:minmax(145px,.8fr) minmax(0,1.3fr);gap:26px}.stage-content{border-inline-start:1px solid var(--line);padding-inline-start:22px}.stage-content h3{margin-top:0}.learning-course-cover{width:148px;height:148px;object-fit:cover;float:inline-end;margin-inline-start:20px;margin-bottom:16px;filter:grayscale(1);transition:filter .62s ease,transform .72s ease}.learning-course-cover:hover{filter:grayscale(0);transform:scale(1.018)}.learning-route{margin-top:12px}.v49-reading{max-width:960px}.learning-workspace [hidden]{display:none!important}
@media(max-width:720px){.learning-workspace{grid-template-columns:140px minmax(0,1fr);gap:24px}.learning-stages{grid-template-columns:1fr}.stage-content{border-inline-start:0;padding:16px 0 0;border-top:1px solid var(--line)}.learning-course-cover{width:110px;height:110px}.learning-branch{font-size:10.5px}}
@media(max-width:480px){.learning-workspace{grid-template-columns:1fr;gap:24px}.learning-side{position:static}.learning-side>.learning-tree{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.learning-side>.learning-tree::before{display:none}.learning-side .learning-branch{border-bottom:1px solid var(--line)}.learning-side .learning-branch::before{inset-inline-start:-13px}.learning-next{flex-wrap:wrap}.learning-location{margin-bottom:10px!important}}
@media(prefers-reduced-motion:reduce){.learning-branch,.learning-branch::before,.learning-course-cover,:is(.category-card,.project-card,.store-card,.product-card) img{transition:none!important}}
.category-button{border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:var(--emkan-control-size)!important;font-weight:400!important;padding:9px 0!important}
.podcast-filter{border:0!important}
.v49-columns:has(>.v49-person[hidden]){grid-template-columns:1fr}
.v49-service-cover img{filter:grayscale(100%);opacity:.94;transition:filter .62s ease,opacity .3s ease,transform .72s cubic-bezier(.22,.61,.36,1)}
.v49-service-cover:hover img{filter:grayscale(0);opacity:1;transform:scale(1.018)}
@media(prefers-reduced-motion:reduce){.v49-service-cover img{transition:none!important}}


/* shared/emkan-v51.css */
/* EMKAN v51 — consistency layer. Loaded last; preserves existing module logic. */
:root{--emkan-control-h:34px;--emkan-cascade:560ms;--emkan-cascade-ease:cubic-bezier(.22,.61,.36,1)}

/* 1) Form language: no rectangular input/search/select/textarea boxes anywhere. */
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]),textarea,select){
  border:0!important;border-bottom:1px solid var(--line,rgba(21,24,29,.18))!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;outline:0!important;padding-inline:2px!important;
  transition:border-color .28s ease,opacity .28s ease!important
}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]),textarea,select):is(:hover,:focus){border-bottom-color:var(--hover-accent,#6f9fb2)!important;box-shadow:none!important}
:where(input[type="search"]){appearance:none!important;-webkit-appearance:none!important}

/* Category choices are typographic, not ruled rows. The trigger/search may keep one quiet baseline. */
:where(.category-button,.category-choice,.article-category-choice,.podcast-topics button,.podcast-seasons button){
  border:0!important;border-bottom:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important
}
:where(.category-list,.article-category-list,.podcast-filter,[data-filter-list]){border:0!important;box-shadow:none!important}
:where(details.category-filter,details.article-category,details.podcast-filter) summary{border-radius:0!important}

/* Smooth disclosure instead of a hard jump. */
details[open] > :not(summary){animation:emkanDisclosure .30s cubic-bezier(.22,.61,.36,1) both}
@keyframes emkanDisclosure{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:none}}

/* 2) One cascade rhythm across grids, mirroring Architecture's progressive load. */
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :where(.category-card,.gallery-item,.related-item),
:where(.store-grid,.product-grid) > :where(.store-card,.product-card){animation:emkanCascadeIn var(--emkan-cascade) var(--emkan-cascade-ease) both}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(1){animation-delay:0ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(2){animation-delay:70ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(3){animation-delay:140ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(4){animation-delay:210ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(5){animation-delay:280ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(6){animation-delay:350ms}
:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid) > :nth-child(n+7){animation-delay:420ms}
@keyframes emkanCascadeIn{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}

/* 3) Shared thin divider under title/back zones. */
:where(.v49-top,.product-toolbar,.project-subnav,.related-head,.people-atlas-head){border-bottom:1px solid var(--line)!important;padding-bottom:14px!important}
.v49-layout>section>h1,.detail-layout article>.detail-title{padding-bottom:14px!important;border-bottom:1px solid var(--line)!important;margin-bottom:24px!important}
.emkan-section-divider{height:1px;background:var(--line);border:0;margin:14px 0 24px}

/* 4) Content Creation: clearer row separation without changing card sizes. */
.content-module-page .category-grid{row-gap:clamp(54px,6vw,78px)!important}
.content-section-page .v49-grid{row-gap:clamp(44px,5vw,66px)!important}

/* 5) Education: reduce excessive white gap below the global menu; listing uses dropdown filters, not a second tree. */
.content-section-page .v49-main{margin-top:clamp(42px,5.5vh,58px)!important}
.content-section-page .v49-layout{align-items:start!important}
.content-section-page .v49-rail{padding-top:0!important}
.learning-route{display:none!important}

/* 6) About tree geometry: node center exactly on the 1px spine. */
.company-axis::before{inset-inline-start:2px!important}
.practice-button::before{inset-inline-start:-18px!important}

/* About visual must mirror when the language switches to English. */
@media(min-width:641px){
 html[lang="en"] .about-company-visual-grid .office-frame-section{grid-column:2!important}
 html[lang="en"] .about-company-visual-grid .company-section{grid-column:1!important}
 html[lang="en"] .about-company-visual-grid .company-profile-download{grid-column:1!important}
}

/* 7) Civil search/filter UI uses the same understated Architecture language. */
.emkan-civil-tools{display:grid;gap:14px;margin:0 0 30px;max-width:240px}
.emkan-civil-tools label{display:block;color:var(--category-muted,var(--fg));font-size:var(--emkan-control-size,11px)}
.emkan-civil-tools input,.emkan-civil-tools select{display:block;width:100%;height:32px;margin-top:6px;font:inherit;color:var(--fg)}
.emkan-civil-results .civil-entry{border:0!important;border-bottom:0!important;padding:0!important;margin-bottom:18px!important}
.emkan-civil-results .civil-entry summary{padding:8px 0!important;border:0!important;list-style:none}

/* 8) Auto-created fallback visuals keep every square visual, not blank. */
.emkan-fallback-image{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(100%);opacity:.94;transition:filter .62s ease,transform .72s var(--emkan-cascade-ease)}
:is(.category-card,.project-card,.store-card,.product-card):hover .emkan-fallback-image{filter:grayscale(0);transform:scale(1.018)}

/* Cross-content links created from editor text stay in EMKAN's visual language. */
.emkan-inline-link{color:inherit;text-decoration:none;border-bottom:1px solid var(--line);transition:color .18s ease,border-color .18s ease}
.emkan-inline-link:hover,.emkan-inline-link:focus-visible{color:var(--hover-accent);border-bottom-color:var(--hover-accent)}

/* Store per-language price editor. */
.emkan-price-language-grid{display:grid;grid-template-columns:1fr;gap:0;margin:12px 0 20px;border:0!important;background:transparent!important;box-shadow:none!important}
.emkan-price-language-row{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:end;padding:10px 0;border:0!important;border-bottom:1px solid var(--line)!important;background:transparent!important;box-shadow:none!important}
.emkan-price-language-row:first-child{border-top:1px solid var(--line)!important}
.emkan-price-language-name{align-self:center;font-size:10px;color:var(--category-muted,var(--fg));white-space:nowrap}
.emkan-price-language-row label{display:block!important;margin:0!important}
@media(max-width:760px){.emkan-price-language-row{grid-template-columns:58px minmax(0,1fr);gap:10px 14px}.emkan-price-language-row .field:last-child{grid-column:2}.content-module-page .category-grid{row-gap:42px!important}}
@media(prefers-reduced-motion:reduce){details[open] > :not(summary),:where(.category-grid,.v49-grid,.gallery-items-container,.related-grid)>*,.emkan-fallback-image{animation:none!important;transition:none!important}}

/* v52 follow-up refinements: internal-page spacing, single-divider titles, and quieter sidebar filters. */
.content-section-page .v49-main,
.content-module-page .v49-main{margin-top:clamp(24px,3.4vh,38px)!important}
.content-section-page .v49-page-head,
.content-section-page .v49-top{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:28px!important;
  margin:0 0 18px!important;padding:0 0 14px!important;border-bottom:1px solid var(--line)!important
}
.content-section-page .v49-page-head .v49-headcopy,
.content-section-page .v49-top .v49-headcopy{display:grid;gap:5px}
.content-section-page .v49-kicker{margin:0!important;font-size:11px!important;line-height:1.8!important;color:var(--category-muted,var(--fg));font-weight:400!important}
.content-section-page .v49-page-head h1,
.content-section-page .v49-top h1{margin:0!important;font-size:clamp(18px,1.55vw,24px)!important;line-height:1.6!important;font-weight:560!important}
.content-section-page .v49-page-head--compact h1,
.content-section-page .v49-top--compact h1{font-size:clamp(16px,1.28vw,20px)!important}
.content-section-page .v49-back-link{font-size:11px!important;text-decoration:none!important;color:var(--category-muted,var(--fg))!important;white-space:nowrap}
.content-section-page .v49-layout{align-items:start!important;grid-template-columns:190px minmax(0,1fr)!important;gap:clamp(28px,4vw,66px)!important}
.content-section-page .v49-results-wrap{min-width:0}
.content-section-page .v49-rail{padding-top:0!important;top:16px!important}
.content-section-page .v49-rail>a:first-child{display:none!important}
.content-section-page .v49-rail label,
.content-section-page .v49-filter-block{display:block!important;margin:0 0 16px!important}
.content-section-page .v49-filter-label{display:block!important;margin:0 0 10px!important;font-size:11px!important;line-height:1.8!important;color:var(--category-muted,var(--fg))}
.content-section-page .v49-search-group input{margin-top:0!important;padding:8px 0 6px!important}
.content-section-page .v49-plain-filter{display:block!important}
.content-section-page .v49-plain-filter>summary{
  list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  gap:14px!important;padding:8px 0 6px!important;border:0!important;border-bottom:1px solid var(--line)!important;
  background:transparent!important;cursor:pointer!important;font-size:13px!important;line-height:1.8!important
}
.content-section-page .v49-plain-filter>summary::-webkit-details-marker{display:none}
.content-section-page .v49-filter-chevron{width:8px;height:8px;border-inline-end:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(45deg);flex:0 0 auto;transition:transform .2s ease}
.content-section-page .v49-plain-filter[open] .v49-filter-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.content-section-page .v49-filter-list{display:grid!important;gap:10px!important;padding:12px 0 0!important}
.content-section-page .v49-filter-option{
  display:block!important;width:100%!important;padding:0!important;text-align:inherit!important;font:inherit!important;font-size:13px!important;
  line-height:1.9!important;color:var(--fg)!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer!important
}
.content-section-page .v49-filter-option.is-active{font-weight:400!important;color:var(--fg)!important;background:transparent!important}
.content-section-page .v49-grid{margin-top:0!important}
.content-section-page .v49-empty{padding-top:8px!important}
.content-section-page .v49-layout>section>h1{border:0!important;padding:0!important;margin:0!important}
.content-section-page .v49-top+.v49-hero{border-top:0!important;padding-top:22px!important}
.content-section-page .v49-top+.v49-section,
.content-section-page .v49-top+.v49-hero+.v49-section{margin-top:0!important}

/* Single, calmer divider rhythm across internal detail layouts. */
.v49-top{margin-bottom:18px!important}
.v49-layout>section>h1{border:0!important;padding:0!important;margin:0!important}
.product-main{padding-top:18px!important}
.product-toolbar{padding-bottom:12px!important;margin-bottom:18px!important}
.project-main{margin-top:10px!important}
.project-subnav{padding-bottom:12px!important}
.project-main,.product-main{scroll-margin-top:24px}

/* Sidebar/category lists must stay text-only: no boxed or ruled items. */
:where(.category-list li,.article-category-list li,.podcast-filter li,.v49-filter-list button){border:0!important;box-shadow:none!important;background:transparent!important}
:where(.category-button,.article-category-choice,.podcast-topics button,.podcast-seasons button,.v49-filter-option).is-active{background:transparent!important;box-shadow:none!important}

/* Keep language-specific content isolated in civil/architecture filters. */
html[lang="fa"] :where(.lang-en,.lang-ar){display:none!important}
html[lang="en"] :where(.lang-fa,.lang-ar){display:none!important}
html[lang="ar"] :where(.lang-fa,.lang-en){display:none!important}
html[lang="fa"] :where(span.lang-fa){display:inline!important}
html[lang="en"] :where(span.lang-en){display:inline!important}
html[lang="ar"] :where(span.lang-ar){display:inline!important}

@media(max-width:720px){
  .content-section-page .v49-main,.content-module-page .v49-main{margin-top:24px!important}
  .content-section-page .v49-page-head,
  .content-section-page .v49-top{gap:16px!important;margin-bottom:16px!important}
  .content-section-page .v49-layout{grid-template-columns:130px minmax(0,1fr)!important;gap:18px!important}
}
@media(max-width:480px){
  .content-section-page .v49-page-head,
  .content-section-page .v49-top{align-items:flex-start!important}
  .content-section-page .v49-layout{grid-template-columns:1fr!important}
  .content-section-page .v49-rail{display:block!important}
}

