
    :root {
      --bg: #ffffff;
      --surface: #f8f9fa;
      --surface-2: #eaecf0;
      --text: #202122;
      --muted: #54595d;
      --border: #a2a9b1;
      --border-soft: #c8ccd1;
      --link: #3366cc;
      --link-visited: #795cb2;
      --warning: #fcf4d5;
      --warning-border: #ac6600;
      --notice: #f8f9fa;
      --shadow: rgba(0,0,0,.08);
      --max: 1120px;
      --serif: "Linux Libertine", "Georgia", "Times New Roman", serif;
      --sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Lato, Helvetica, Arial, sans-serif;
    }

    html[data-theme="dark"] {
      --bg: #101418;
      --surface: #20252b;
      --surface-2: #2c333a;
      --text: #eaecf0;
      --muted: #b6bdc5;
      --border: #72777d;
      --border-soft: #54595d;
      --link: #88aaff;
      --link-visited: #c7a7ff;
      --warning: #3a2d0b;
      --warning-border: #d79a27;
      --notice: #20252b;
      --shadow: rgba(0,0,0,.35);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: var(--bg);
      color: var(--text);
      font-family: var(--sans);
      font-size: 14px;
      line-height: 1.6;
    }
    a { color: var(--link); text-decoration: none; }
    a:visited { color: var(--link-visited); }
    a:hover { text-decoration: underline; }
    button, input { font: inherit; }

    .site-header {
      position: sticky;
      top: 0;
      z-index: 30;
      display: grid;
      grid-template-columns: minmax(220px, 300px) minmax(220px, 1fr) auto;
      gap: 18px;
      align-items: center;
      min-height: 52px;
      padding: 4px 20px;
      background: color-mix(in srgb, var(--bg) 96%, transparent);
      border-bottom: 1px solid var(--border-soft);
      backdrop-filter: blur(10px);
    }
    .brand {
      display: flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
      color: var(--text) !important;
      text-decoration: none !important;
    }
    .globe {
      width: 46px;
      height: 46px;
      border: 1.5px solid var(--text);
      border-radius: 50%;
      display: grid;
      place-items: center;
      font-family: var(--serif);
      font-size: 21px;
      line-height: 1;
      position: relative;
      overflow: hidden;
      background:
        linear-gradient(90deg, transparent 47%, var(--text) 48%, var(--text) 51%, transparent 52%),
        linear-gradient(0deg, transparent 47%, var(--text) 48%, var(--text) 51%, transparent 52%);
    }
    .globe span { background: var(--bg); padding: 2px 4px; border-radius: 50%; }
    .kiwi-mark {
      border-color: #6d4c2f;
      background:
        radial-gradient(circle at center, #eff7df 0 18%, #83ad45 19% 52%, #65462f 53% 100%);
      box-shadow: 0 0 0 2px color-mix(in srgb, #6d4c2f 35%, transparent);
    }
    .kiwi-mark::before {
      content: "";
      position: absolute;
      inset: 9px;
      border-radius: 50%;
      background: repeating-conic-gradient(from 0deg, #1f2718 0 2deg, transparent 2deg 20deg);
      opacity: .55;
    }
    .kiwi-mark span { position: relative; z-index: 1; background: rgba(255,255,255,.88); color: #202122; }
    .infobox svg { display: block; width: 100%; height: auto; background: #fff; }
    .brand-text { line-height: 1.05; }
    .brand-name {
      font-family: var(--serif);
      font-variant: small-caps;
      letter-spacing: .08em;
      font-size: 22px;
    }
    .brand-tagline { font-size: 11px; color: var(--muted); letter-spacing: .02em; }
    .search {
      display: flex;
      width: min(520px, 100%);
      height: 36px;
      border: 1px solid var(--border);
      background: var(--bg);
    }
    .search:focus-within { outline: 2px solid var(--link); outline-offset: 1px; }
    .search input {
      min-width: 0;
      flex: 1;
      border: 0;
      outline: 0;
      padding: 7px 10px;
      background: transparent;
      color: var(--text);
    }
    .search button {
      border: 0;
      border-left: 1px solid var(--border);
      background: var(--surface);
      color: var(--text);
      padding: 0 16px;
      font-weight: 600;
      cursor: pointer;
    }
    .header-actions { display: flex; align-items: center; gap: 12px; white-space: nowrap; }
    .icon-button {
      border: 1px solid var(--border-soft);
      background: var(--surface);
      color: var(--text);
      border-radius: 2px;
      padding: 6px 10px;
      cursor: pointer;
    }

    .layout {
      display: grid;
      grid-template-columns: 230px minmax(0, var(--max)) 180px;
      gap: 28px;
      justify-content: center;
      padding: 28px 28px 70px;
    }
    .left-rail, .right-rail { min-width: 0; }
    .rail-sticky { position: sticky; top: 90px; max-height: calc(100vh - 110px); overflow: auto; }
    .rail-heading {
      font-weight: 700;
      padding-bottom: 6px;
      margin-bottom: 8px;
      border-bottom: 1px solid var(--border-soft);
    }
    .toc { list-style: none; padding: 0; margin: 0; font-size: 13px; }
    .toc li { margin: 4px 0; }
    .toc .sub { padding-left: 13px; font-size: 12.5px; }
    .toc a.active { font-weight: 700; color: var(--text); }
    .rail-box { margin-top: 24px; padding-top: 12px; border-top: 1px solid var(--border-soft); color: var(--muted); font-size: 12px; }

    main { min-width: 0; }
    .parody-banner {
      border: 1px solid #b32424;
      border-left-width: 10px;
      background: color-mix(in srgb, #fee7e6 78%, var(--bg));
      padding: 10px 14px;
      margin-bottom: 14px;
      color: var(--text);
    }
    .delete-box, .maintenance-box {
      display: grid;
      grid-template-columns: 42px 1fr;
      gap: 12px;
      align-items: start;
      border: 1px solid var(--border);
      background: var(--warning);
      padding: 10px 14px;
      margin: 10px 0;
    }
    .maintenance-box { background: var(--notice); }
    .box-icon { font-size: 28px; line-height: 1; text-align: center; padding-top: 3px; }
    .page-title-row { display: flex; gap: 12px; justify-content: space-between; align-items: baseline; }
    h1 {
      font-family: var(--serif);
      font-size: 30px;
      font-weight: 400;
      line-height: 1.2;
      margin: 20px 0 4px;
      border-bottom: 1px solid var(--border);
      padding-bottom: 5px;
    }
    .language-button { font-weight: 600; font-size: 13px; }
    .page-subtitle { color: var(--muted); font-size: 12px; margin: 2px 0 10px; }
    .tabs {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      border-bottom: 1px solid var(--border);
      margin: 8px 0 20px;
    }
    .tabs-group { display: flex; gap: 16px; }
    .tab { padding: 8px 0 7px; color: var(--link); }
    .tab.active { color: var(--text); border-bottom: 2px solid var(--text); }

    article { font-size: 15px; }
    article p { margin: .55em 0 .85em; }
    article h2 {
      font-family: var(--serif);
      font-size: 24px;
      font-weight: 400;
      line-height: 1.25;
      border-bottom: 1px solid var(--border);
      padding-bottom: 3px;
      margin: 1.35em 0 .55em;
    }
    article h3 {
      font-size: 17px;
      line-height: 1.3;
      margin: 1.1em 0 .35em;
    }
    article ul, article ol { margin-top: .35em; }
    article blockquote {
      margin: 1em 2.4em;
      padding-left: 16px;
      border-left: 3px solid var(--border);
      color: var(--text);
      font-family: var(--serif);
      font-size: 17px;
    }
    .citation-needed {
      font-size: 11px;
      color: var(--link);
      white-space: nowrap;
      vertical-align: super;
    }
    .edit-link { float: right; font-family: var(--sans); font-size: 12px; font-weight: 400; }

    .infobox {
      float: right;
      width: 300px;
      margin: 0 0 18px 22px;
      border: 1px solid var(--border);
      border-spacing: 3px;
      background: var(--surface);
      font-size: 12.5px;
      line-height: 1.45;
      box-shadow: 0 1px 1px var(--shadow);
    }
    .infobox caption {
      border: 1px solid var(--border);
      border-bottom: 0;
      background: #f6d6c8;
      color: #202122;
      padding: 8px;
      font-size: 18px;
      font-weight: 700;
    }
    .infobox img { width: 100%; height: auto; display: block; }
    .infobox td, .infobox th { padding: 4px 7px; vertical-align: top; }
    .infobox th { text-align: left; width: 38%; }
    .infobox .image-caption { text-align: center; font-size: 11px; color: var(--muted); padding: 5px 8px 8px; }

    figure.thumb {
      border: 1px solid var(--border-soft);
      background: var(--surface);
      padding: 4px;
      width: min(310px, 45%);
      margin: 6px 0 14px 20px;
      float: right;
    }
    figure.thumb.left { float: left; margin: 6px 20px 14px 0; }
    figure.thumb img { display: block; width: 100%; height: auto; }
    figure.thumb figcaption { font-size: 12px; line-height: 1.35; padding: 6px 4px 3px; }
    .wide-figure { clear: both; width: 100% !important; float: none !important; margin: 18px 0 !important; }
    .wide-figure img { max-height: 410px; object-fit: cover; }

    .hatnote { font-style: italic; color: var(--muted); margin: 8px 0 14px 24px; }
    .smallcaps { font-variant: small-caps; }
    .nowrap { white-space: nowrap; }
    .references { font-size: 13px; }
    .references li { margin-bottom: .45em; }
    .catlinks {
      clear: both;
      border: 1px solid var(--border);
      background: var(--surface);
      padding: 7px 10px;
      margin-top: 24px;
      font-size: 13px;
    }
    .footer {
      border-top: 1px solid var(--border-soft);
      color: var(--muted);
      font-size: 12px;
      padding: 24px 28px 45px;
      max-width: 1520px;
      margin: 0 auto;
    }
    .footer p { margin: 6px 0; }
    .license-list { columns: 2; column-gap: 30px; }
    .license-list li { break-inside: avoid; margin-bottom: 8px; }

    .appearance-panel {
      border-left: 1px solid var(--border-soft);
      padding-left: 16px;
      font-size: 12px;
      color: var(--muted);
    }
    .appearance-panel label { display: block; margin: 8px 0; }
    .appearance-panel input { vertical-align: middle; }

    .search-highlight { background: #ffec80; color: #202122; }
    .search-status { margin-top: 5px; min-height: 18px; color: var(--muted); font-size: 12px; }
    .back-to-top {
      position: fixed;
      right: 20px;
      bottom: 20px;
      display: none;
      z-index: 20;
      border: 1px solid var(--border);
      background: var(--surface);
      color: var(--text);
      width: 40px;
      height: 40px;
      border-radius: 50%;
      cursor: pointer;
      box-shadow: 0 2px 8px var(--shadow);
    }

    @media (max-width: 1180px) {
      .layout { grid-template-columns: 210px minmax(0, 1fr); }
      .right-rail { display: none; }
      .site-header { grid-template-columns: 220px 1fr auto; }
    }
    @media (max-width: 820px) {
      .site-header { grid-template-columns: 1fr auto; gap: 12px; padding: 8px 14px; }
      .search { grid-column: 1 / -1; width: 100%; order: 3; }
      .header-actions a { display: none; }
      .layout { display: block; padding: 14px 16px 50px; }
      .left-rail { display: none; }
      .infobox { float: none; width: min(100%, 480px); margin: 12px auto 18px; }
      figure.thumb, figure.thumb.left { float: none; width: min(100%, 480px); margin: 14px auto; }
      .license-list { columns: 1; }
      article { font-size: 15px; }
      h1 { font-size: 27px; }
      .tabs { overflow-x: auto; }
    }
    @media print {
      .site-header, .left-rail, .right-rail, .tabs, .back-to-top, .parody-banner { display: none !important; }
      .layout { display: block; padding: 0; }
      body { background: white; color: black; }
      a { color: black; text-decoration: none; }
      .infobox, figure.thumb { break-inside: avoid; }
      .footer { padding-left: 0; padding-right: 0; }
    }
  
    .hiero-mark {
      border-color: var(--text);
      background:
        radial-gradient(circle at center, transparent 0 28%, var(--text) 29% 31%, transparent 32% 100%),
        linear-gradient(90deg, transparent 46%, var(--text) 47% 53%, transparent 54%);
      box-shadow: none;
    }
    .hiero-mark::before {
      content: ""; position: absolute; inset: 8px; border: 1px solid var(--text);
      border-top-color: transparent; border-radius: 50%; transform: rotate(45deg); opacity: .7;
    }
    .hiero-mark span { position: relative; z-index: 2; background: var(--bg); color: var(--text); font-family: var(--serif); font-weight: 700; }

/* Hieropedia shared extensions */
.top-nav {display:flex;gap:18px;align-items:center;font-size:13px}.top-nav a{color:var(--muted)}
.portal-shell{width:min(var(--max),calc(100% - 36px));margin:0 auto;padding:24px 0 90px}
.portal-hero{padding:24px 0 34px;border-bottom:0}
.portal-kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.portal-title{font-family:var(--serif);font-size:clamp(48px,8vw,92px);line-height:.96;font-weight:400;margin:0 0 22px;border-bottom:0;padding-bottom:0}
.portal-lead{max-width:820px;font-size:21px;color:var(--muted);margin:0 auto;text-align:center}
.portal-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-top:34px}
.portal-card{border:1px solid var(--border-soft);background:var(--surface);padding:26px;box-shadow:0 1px 2px var(--shadow)}
.portal-card h2,.portal-card h3{font-family:var(--serif);font-weight:400;margin:0 0 12px}.portal-card h2{font-size:32px}.portal-card h3{font-size:24px}
.portal-card p{color:var(--muted);margin:.5em 0 1em}.portal-card a.read-more{font-weight:700}
.definition{border-left:4px solid var(--link);padding-left:18px;margin:24px 0;font-size:18px}
.article-list{list-style:none;padding:0;margin:0}.article-list li{padding:14px 0;border-top:1px solid var(--border-soft)}.article-list li:first-child{border-top:0}.article-list b{display:block;font-family:var(--serif);font-size:20px;font-weight:400}
.method-section{max-width:900px;margin:0 auto;padding:62px 18px 90px}.method-section h1{font-size:42px}.method-section h2{font-family:var(--serif);font-weight:400;font-size:30px;border-bottom:1px solid var(--border-soft);padding-bottom:6px;margin-top:1.5em}.method-section p,.method-section li{font-size:16px}.criteria{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.criterion{border:1px solid var(--border-soft);background:var(--surface);padding:18px}.criterion b{display:block;margin-bottom:6px}
@media(max-width:820px){.portal-grid,.criteria{grid-template-columns:1fr}.portal-shell{padding-top:18px}.portal-title{font-size:54px}.portal-lead{font-size:18px}.top-nav{display:none}}


/* Hieropedia brand system — approved portal glyph (primary) and archive seal (editorial). */
:root {
  --hiero-ink: #202224;
  --hiero-gold: #c88a20;
  --hiero-paper: #f7f4ee;
}
html[data-theme="dark"] {
  --hiero-ink: #f3f1eb;
  --hiero-gold: #d9a64a;
  --hiero-paper: #171a1d;
}
.brand-lockup {
  display: block;
}
.brand-lockup-img {
  display: block;
  width: min(100%, 270px);
  max-height: 44px;
  height: auto;
  object-fit: contain;
}
.portal-hero {
  text-align: center;
}
.portal-brand-mark {
  width: clamp(128px, 15vw, 196px);
  height: auto;
  display: block;
  margin: 0 auto 22px;
}
.portal-kicker {
  color: var(--hiero-gold);
  letter-spacing: .18em;
  text-transform: uppercase;
}
.editorial-seal-card img {
  display: block;
  width: min(250px, 80%);
  height: auto;
  margin: 0 auto 18px;
}
@media (max-width: 920px) {
  .site-header {
    grid-template-columns: 1fr auto;
    gap: 12px;
  }
  .top-nav {
    grid-column: 1 / -1;
    order: 3;
  }
  .brand-lockup-img { width: min(100%, 245px); max-height: 40px; }
}
@media (max-width: 820px) {
  .brand-lockup-img { width: min(100%, 220px); max-height: 36px; }
}
@media print {
  .brand-lockup-img, .portal-brand-mark, .editorial-seal-card img { filter: grayscale(1); }
}


/* Unified page standard: identical compact masthead on every page. */
.site-header {
  grid-template-columns: minmax(220px, 300px) minmax(220px, 1fr) auto;
  min-height: 52px;
  padding: 4px 20px;
  gap: 18px;
}
.brand-lockup-img {
  width: min(100%, 270px);
  max-height: 44px;
  object-fit: contain;
}
.top-nav {
  justify-self: end;
}
.article-tools {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 12px 0 18px;
}
.article-tools .search {
  flex: 1 1 420px;
  max-width: 560px;
}
.official-link {
  white-space: nowrap;
  font-weight: 600;
}
@media (max-width: 920px) {
  .site-header {
    grid-template-columns: 1fr auto;
  }
  .top-nav {
    grid-column: 1 / -1;
    justify-self: start;
    order: 3;
  }
  .brand-lockup-img {
    width: min(100%, 245px);
    max-height: 40px;
  }
}
@media (max-width: 820px) {
  .article-tools {
    align-items: stretch;
    flex-direction: column;
  }
  .article-tools .search {
    flex-basis: auto;
    max-width: none;
    width: 100%;
  }
  .brand-lockup-img {
    width: min(100%, 220px);
    max-height: 36px;
  }
}


/* Submission page */
.submit-page { max-width: 920px; }
.submission-list { padding-left: 1.25rem; }
.submission-list li { margin-bottom: .5rem; }
.submission-subject {
  border: 1px solid var(--border-soft);
  background: var(--surface);
  padding: 14px 16px;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 15px;
}
.submission-statuses { margin-top: 18px; }
.submission-contact {
  margin-top: 34px;
  padding: 22px;
  border: 1px solid var(--border-soft);
  background: var(--surface);
}
.submission-contact h2 { margin-top: 0; }
.submission-email { font-size: 22px; font-family: var(--serif); }
.small-note { color: var(--muted); font-size: 12px; }
.top-nav a[aria-current="page"] { color: var(--text); font-weight: 700; }

/* Edition selector and translation stubs */
.edition-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 7px;
  margin: 0 0 8px;
  font-size: 12px;
  letter-spacing: .04em;
}
.edition-current { color: var(--text) !important; font-weight: 700; }
.edition-stub, .edition-stub:visited { color: #ba0000; }
html[data-theme="dark"] .edition-stub,
html[data-theme="dark"] .edition-stub:visited { color: #ff8a8a; }
.translation-stubs {
  margin: 28px 0 0;
  padding: 18px 20px;
  border: 1px solid var(--border-soft);
  background: var(--surface);
}
.translation-stubs h2 {
  margin: 0 0 6px;
  font-family: var(--serif);
  font-size: 22px;
  font-weight: 400;
}
.translation-stubs ul {
  columns: 2;
  margin: 10px 0 0;
  padding-left: 20px;
}
.translation-stubs li { margin: 3px 0; }
.translation-note { margin: 0; color: var(--muted); font-size: 13px; }
@media(max-width:820px){
  .edition-list { justify-content: center; flex-wrap: wrap; margin-bottom: 10px; }
  .translation-stubs ul { columns: 1; }
}


/* AI machine-readable edition */
.machine-hero { padding-bottom: 24px; }
.machine-summary-grid { grid-template-columns: 1.4fr 1fr; }
.machine-facts { list-style: none; margin: 0; padding: 0; }
.machine-facts li { display: grid; grid-template-columns: 150px 1fr; gap: 14px; padding: 10px 0; border-top: 1px solid var(--border-soft); }
.machine-facts li:first-child { border-top: 0; }
.machine-facts b { font-weight: 600; }
.machine-facts span { color: var(--muted); }
.machine-contract { max-width: 900px; margin: 34px 0 0; }
.machine-contract h2, .machine-data h2 { font-family: var(--serif); font-size: 30px; font-weight: 400; margin: 0 0 10px; }
.machine-contract p { max-width: 860px; font-size: 16px; color: var(--muted); }
.machine-data { margin-top: 34px; border: 1px solid var(--border-soft); background: var(--surface); }
.machine-data-header { display: flex; justify-content: space-between; align-items: end; gap: 18px; padding: 20px 22px 12px; border-bottom: 1px solid var(--border-soft); }
.machine-data-header .portal-kicker { margin-bottom: 5px; }
.machine-data pre { margin: 0; padding: 22px; max-height: 720px; overflow: auto; background: color-mix(in srgb, var(--bg) 72%, var(--surface)); color: var(--text); font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; tab-size: 2; white-space: pre; }
.machine-data code { font: inherit; }
@media(max-width:820px){
  .machine-summary-grid { grid-template-columns: 1fr; }
  .machine-facts li { grid-template-columns: 1fr; gap: 2px; }
  .machine-data-header { align-items: start; flex-direction: column; }
  .machine-data pre { font-size: 12px; padding: 16px; }
}


/* Article language sidebar */
.rail-languages { margin-top: 22px; padding-top: 12px; border-top: 1px solid var(--border-soft); }
.rail-language-list { list-style: none; padding: 0; margin: 0; font-size: 13px; }
.rail-language-list li { margin: 5px 0; }
.rail-language-list .current { color: var(--text); font-weight: 700; }
.rail-language-list .pending { color: #b32424; cursor: default; }

.compact-hero{padding-top:2rem;padding-bottom:1.5rem}.compact-hero .portal-title{margin-bottom:.5rem}.portal-card code{white-space:normal;overflow-wrap:anywhere}

.footer a{color:inherit;text-decoration:underline;text-underline-offset:2px}.footer a:hover{color:var(--accent)}
#contact{scroll-margin-top:5rem}


/* English information architecture rewrite */
.section-nav{display:flex;gap:6px;overflow-x:auto;margin:8px 0 20px;padding:8px 0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);scrollbar-width:thin}
.section-nav a{white-space:nowrap;padding:6px 9px;border-radius:2px;color:var(--muted)}
.section-nav a:hover,.section-nav a.current{background:var(--surface-2);color:var(--text);text-decoration:none}
.type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0}
.type-card{display:block;border:1px solid var(--border-soft);background:var(--surface);padding:20px;color:var(--text)!important;min-height:150px}
.type-card:hover{text-decoration:none;border-color:var(--link);box-shadow:0 2px 8px var(--shadow)}
.type-card h2{font-family:var(--serif);font-weight:400;font-size:25px;margin:0 0 9px}
.type-card p{color:var(--muted);margin:.4em 0}
.type-count{font-size:12px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}
.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:24px 0 34px}
.feature-card{border:1px solid var(--border-soft);padding:22px;background:var(--surface)}
.feature-card h2{font-family:var(--serif);font-weight:400;font-size:28px;margin:0 0 8px}
.feature-card p{color:var(--muted)}
.entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 34px}
.entry-card{border:1px solid var(--border-soft);background:var(--surface);padding:18px}
.entry-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.entry-card h3{font-family:var(--serif);font-size:23px;font-weight:400;margin:0}
.entry-card p{color:var(--muted);margin:.55em 0 .9em}
.status-badge{display:inline-block;padding:2px 7px;border:1px solid var(--border-soft);border-radius:10px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.status-badge.published{border-color:#2f7d32;color:#2f7d32}.status-badge.stub{border-color:#a46600;color:#8b5700}
html[data-theme="dark"] .status-badge.published{color:#7bd77f;border-color:#7bd77f}html[data-theme="dark"] .status-badge.stub{color:#e6ad4f;border-color:#e6ad4f}
.entry-tags{display:flex;flex-wrap:wrap;gap:6px}.entry-tag{background:var(--surface-2);color:var(--muted);font-size:11px;padding:3px 7px;border-radius:2px}
.filter-box{display:flex;gap:10px;align-items:center;margin:18px 0 26px}.filter-box input{flex:1;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:10px 12px}.filter-count{font-size:12px;color:var(--muted);white-space:nowrap}
.stub-notice{border:1px solid var(--warning-border);border-left-width:6px;background:var(--warning);padding:14px 18px;margin:16px 0 24px}
.stub-meta{width:100%;border-collapse:collapse;margin:18px 0;background:var(--surface);border:1px solid var(--border-soft)}.stub-meta th,.stub-meta td{text-align:left;vertical-align:top;padding:9px 12px;border-top:1px solid var(--border-soft)}.stub-meta tr:first-child th,.stub-meta tr:first-child td{border-top:0}.stub-meta th{width:180px}
.breadcrumbs{font-size:12px;color:var(--muted);margin:10px 0 0}.breadcrumbs a{color:var(--muted)}
.taxonomy-table{width:100%;border-collapse:collapse;margin:18px 0 30px}.taxonomy-table th,.taxonomy-table td{padding:10px 12px;text-align:left;vertical-align:top;border:1px solid var(--border-soft)}.taxonomy-table th{background:var(--surface)}
.principle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:22px 0}.principle-card{border:1px solid var(--border-soft);background:var(--surface);padding:18px}.principle-card h3{margin:0 0 7px;font-family:var(--serif);font-size:22px;font-weight:400}.principle-card p{color:var(--muted);margin:.4em 0}
.article-breadcrumb{font-size:12px;color:var(--muted);margin:0 0 5px}.article-breadcrumb a{color:var(--muted)}
.catlinks a{white-space:nowrap}
.migration-note{border:1px solid var(--border-soft);background:var(--surface);padding:18px 20px;margin:22px 0;color:var(--muted)}
.brand-compact{display:flex;align-items:center;gap:10px;width:max-content}.brand-mark-small{width:42px;height:42px;object-fit:contain;flex:0 0 auto}.brand-compact .brand-text{display:flex;flex-direction:column}.brand-compact .brand-name{font-size:22px;line-height:1}.brand-compact .brand-tagline{margin-top:4px;text-transform:uppercase;letter-spacing:.08em;font-size:9px}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){.type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entry-grid,.feature-grid,.principle-grid{grid-template-columns:1fr}}
@media(max-width:560px){.type-grid{grid-template-columns:1fr}.section-nav{margin-left:-8px;margin-right:-8px;padding-left:8px}.entry-card-head{display:block}.status-badge{margin-top:6px}.stub-meta th{width:120px}}

/* Hieropedia v2: generated architecture, accessibility, and functional controls */
.skip-link{position:fixed;left:12px;top:8px;z-index:10000;transform:translateY(-180%);background:var(--text);color:var(--bg);padding:10px 14px;border-radius:3px;font-weight:700}
.skip-link:focus{transform:translateY(0)}
:focus-visible{outline:3px solid #2b74c8;outline-offset:3px}
html[data-theme="dark"] :focus-visible{outline-color:#82b7ff}
button,input,select,a{font:inherit}
button{cursor:pointer}
.header-actions{display:flex;gap:10px;align-items:center}
.header-search{display:flex;align-items:center;gap:4px}
.header-search input{width:150px;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:7px 8px}
.header-search button,.registry-filter button,.article-search button,.article-tabs button{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:7px 10px}
.header-search button:hover,.registry-filter button:hover,.article-search button:hover,.article-tabs button:hover{background:var(--surface-2)}
.portal-shell{width:min(var(--max),calc(100% - 36px));margin:0 auto}
.prose-page{max-width:880px;margin:0 auto 42px;font-size:15px;line-height:1.66}
.prose-page h2{margin-top:1.75em;font-family:var(--serif);font-weight:400}
.prose-page h3{margin-top:1.35em}
.prose-page code{overflow-wrap:anywhere}
.breadcrumbs{margin:16px 0;color:var(--muted);font-size:13px}
.breadcrumbs a{color:var(--muted)}
.registry-filter{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr)) auto;gap:12px;align-items:end;margin:20px 0 28px;padding:16px;border:1px solid var(--border-soft);background:var(--surface)}
.registry-filter>div{display:flex;flex-direction:column;gap:5px}
.registry-filter label{font-size:12px;font-weight:700;color:var(--muted)}
.registry-filter input,.registry-filter select{width:100%;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:9px 10px;min-height:42px}
.registry-filter .filter-count{grid-column:1/-1;margin:0;color:var(--muted)}
.no-results{border:1px solid var(--border-soft);padding:18px;background:var(--surface)}
.aliases{font-size:12px}
.review-meta{font-size:12px;color:var(--muted)}
.recent-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 32px}
.recent-list a{display:flex;justify-content:space-between;gap:12px;border:1px solid var(--border-soft);background:var(--surface);padding:12px 14px;color:var(--text)}
.recent-list a:hover{text-decoration:none;border-color:var(--link)}
.recent-list small{color:var(--muted);white-space:nowrap}
.article-main{min-width:0}
.article-meta-strip{display:flex;flex-wrap:wrap;gap:7px 18px;margin:12px 0 16px;padding:10px 12px;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);font-size:12px;color:var(--muted)}
.article-tools{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.article-search{display:flex;gap:5px;align-items:center;flex-wrap:wrap}
.article-search input{min-width:230px;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:8px 10px}
.search-status{min-width:100px;color:var(--muted);font-size:12px}
.article-tabs{display:flex;flex-wrap:wrap;gap:0;margin:14px 0;border-bottom:1px solid var(--border)}
.article-tabs a,.article-tabs button{display:inline-block;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:9px 12px;text-decoration:none}
.article-tabs a:hover,.article-tabs button:hover{background:var(--surface-2);color:var(--text)}
.article-tabs a.active{border-bottom-color:var(--link);color:var(--text);font-weight:700}
.mobile-toc{display:none;border:1px solid var(--border-soft);background:var(--surface);padding:10px 14px;margin:12px 0 18px}
.mobile-toc summary{font-weight:700;cursor:pointer}
.mobile-toc ol{columns:2;padding-left:22px}
.toc .toc-level-3{padding-left:12px;font-size:12px}
.toc a[aria-current="location"]{font-weight:700;color:var(--text)}
.search-hit{background:#ffdf73;color:#111;padding:0 1px}
.search-hit.current{background:#ff9f43;box-shadow:0 0 0 2px #ff9f43}
html[data-theme="dark"] .search-hit{background:#7a6410;color:#fff}
html[data-theme="dark"] .search-hit.current{background:#a95d00}
.table-scroll{max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid transparent}
.table-scroll:focus{border-color:var(--link)}
.table-scroll table{margin:0;min-width:620px}
.table-scroll .infobox{min-width:0}
.appearance-panel fieldset{border:0;padding:0;margin:0}
.appearance-panel legend{font-weight:700;margin-bottom:12px}
.appearance-group{margin-top:18px}
.notice{border:1px solid var(--border-soft);background:var(--surface);padding:12px 15px}
.policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.policy-card{border:1px solid var(--border-soft);background:var(--surface);padding:18px}
.policy-card h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 8px}
.version-table{width:100%;border-collapse:collapse}
.version-table th,.version-table td{text-align:left;vertical-align:top;border:1px solid var(--border-soft);padding:9px 11px}
.version-table th{background:var(--surface)}
.email-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.copy-block{position:relative;border:1px solid var(--border-soft);background:var(--surface);padding:16px;margin:14px 0}
.copy-block pre{white-space:pre-wrap;margin:0;font-family:var(--sans);font-size:13px}
.copy-block button{margin-top:12px;border:1px solid var(--border);background:var(--bg);color:var(--text);padding:8px 11px}
.conflict-disclosure{border-left:5px solid #a46600;background:var(--warning);padding:14px 17px;margin:18px 0}
.status-list{display:grid;gap:10px;margin:16px 0}.status-list>div{border:1px solid var(--border-soft);background:var(--surface);padding:12px 15px}.status-list h3{margin:0 0 5px;font-size:17px}
.back-to-top{min-width:44px;min-height:44px}
.icon-button{min-width:44px;min-height:44px}
.entry-card a,.type-card,.feature-card a{overflow-wrap:anywhere}
@media(max-width:1050px){.registry-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.registry-filter .filter-count{grid-column:1/-1}.header-search input{width:120px}}
@media(max-width:820px){.header-search,.header-search-link{display:none}.mobile-toc{display:block}.left-rail{display:none!important}.layout{grid-template-columns:minmax(0,1fr)!important}.right-rail{display:none!important}.article-main{width:min(100%,calc(100% - 28px));margin:0 auto}.mobile-toc ol{columns:1}.recent-list{grid-template-columns:1fr}}
@media(max-width:620px){.registry-filter{grid-template-columns:1fr}.registry-filter .filter-count{grid-column:auto}.article-search{width:100%}.article-search input{width:100%;min-width:0}.article-tools{align-items:stretch}.official-link{align-self:flex-start}.policy-grid{grid-template-columns:1fr}.article-meta-strip{display:grid}.page-title-row{align-items:flex-start}.edition-list{font-size:11px}.recent-list a{display:block}.recent-list small{display:block;margin-top:4px}.table-scroll table{min-width:540px}}
@media print{.skip-link,.site-header,.section-nav,.left-rail,.right-rail,.article-tools,.article-tabs,.mobile-toc,.footer,.back-to-top{display:none!important}.layout{display:block!important}.article-main{width:100%!important;margin:0!important}.article-meta-strip{border:1px solid #999}.table-scroll{overflow:visible}.table-scroll table{min-width:0}}

.header-search-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 10px;border:1px solid var(--border-soft);background:var(--surface);color:var(--text)}
.header-search-link:hover{background:var(--surface-2);text-decoration:none}
