/**
 * Do not edit directly, this file was auto-generated.
 */

:root {
  --color-primitive-blue-50: #e8f1fe;
  --color-primitive-blue-100: #d9e6ff;
  --color-primitive-blue-200: #c5d7fb;
  --color-primitive-blue-300: #9db7f9;
  --color-primitive-blue-400: #7096f8;
  --color-primitive-blue-500: #4979f5;
  --color-primitive-blue-600: #3460fb;
  --color-primitive-blue-700: #264af4;
  --color-primitive-blue-800: #0031d8;
  --color-primitive-blue-900: #0017c1;
  --color-primitive-blue-1000: #00118f;
  --color-primitive-blue-1100: #000071;
  --color-primitive-blue-1200: #000060;
  --color-primitive-light-blue-50: #f0f9ff;
  --color-primitive-light-blue-100: #dcf0ff;
  --color-primitive-light-blue-200: #c0e4ff;
  --color-primitive-light-blue-300: #97d3ff;
  --color-primitive-light-blue-400: #57b8ff;
  --color-primitive-light-blue-500: #39abff;
  --color-primitive-light-blue-600: #008bf2;
  --color-primitive-light-blue-700: #0877d7;
  --color-primitive-light-blue-800: #0066be;
  --color-primitive-light-blue-900: #0055ad;
  --color-primitive-light-blue-1000: #00428c;
  --color-primitive-light-blue-1100: #00316a;
  --color-primitive-light-blue-1200: #00234b;
  --color-primitive-cyan-50: #e9f7f9;
  --color-primitive-cyan-100: #c8f8ff;
  --color-primitive-cyan-200: #99f2ff;
  --color-primitive-cyan-300: #79e2f2;
  --color-primitive-cyan-400: #2bc8e4;
  --color-primitive-cyan-500: #01b7d6;
  --color-primitive-cyan-600: #00a3bf;
  --color-primitive-cyan-700: #008da6;
  --color-primitive-cyan-800: #008299;
  --color-primitive-cyan-900: #006f83;
  --color-primitive-cyan-1000: #006173;
  --color-primitive-cyan-1100: #004c59;
  --color-primitive-cyan-1200: #003741;
  --color-primitive-green-50: #e6f5ec;
  --color-primitive-green-100: #c2e5d1;
  --color-primitive-green-200: #9bd4b5;
  --color-primitive-green-300: #71c598;
  --color-primitive-green-400: #51b883;
  --color-primitive-green-500: #2cac6e;
  --color-primitive-green-600: #259d63;
  --color-primitive-green-700: #1d8b56;
  --color-primitive-green-800: #197a4b;
  --color-primitive-green-900: #115a36;
  --color-primitive-green-1000: #0c472a;
  --color-primitive-green-1100: #08351f;
  --color-primitive-green-1200: #032213;
  --color-primitive-lime-50: #ebfad9;
  --color-primitive-lime-100: #d0f5a2;
  --color-primitive-lime-200: #c0f354;
  --color-primitive-lime-300: #ade830;
  --color-primitive-lime-400: #9ddd15;
  --color-primitive-lime-500: #8cc80c;
  --color-primitive-lime-600: #7eb40d;
  --color-primitive-lime-700: #6fa104;
  --color-primitive-lime-800: #618e00;
  --color-primitive-lime-900: #507500;
  --color-primitive-lime-1000: #3e5a00;
  --color-primitive-lime-1100: #2c4100;
  --color-primitive-lime-1200: #1e2d00;
  --color-primitive-yellow-50: #fbf5e0;
  --color-primitive-yellow-100: #fff0b3;
  --color-primitive-yellow-200: #ffe380;
  --color-primitive-yellow-300: #ffd43d;
  --color-primitive-yellow-400: #ffc700;
  --color-primitive-yellow-500: #ebb700;
  --color-primitive-yellow-600: #d2a400;
  --color-primitive-yellow-700: #b78f00;
  --color-primitive-yellow-800: #a58000;
  --color-primitive-yellow-900: #927200;
  --color-primitive-yellow-1000: #806300;
  --color-primitive-yellow-1100: #6e5600;
  --color-primitive-yellow-1200: #604b00;
  --color-primitive-orange-50: #ffeee2;
  --color-primitive-orange-100: #ffdfca;
  --color-primitive-orange-200: #ffc199;
  --color-primitive-orange-300: #ffa66d;
  --color-primitive-orange-400: #ff8d44;
  --color-primitive-orange-500: #ff7628;
  --color-primitive-orange-600: #fb5b01;
  --color-primitive-orange-700: #e25100;
  --color-primitive-orange-800: #c74700;
  --color-primitive-orange-900: #ac3e00;
  --color-primitive-orange-1000: #8b3200;
  --color-primitive-orange-1100: #6d2700;
  --color-primitive-orange-1200: #541e00;
  --color-primitive-red-50: #fdeeee;
  --color-primitive-red-100: #ffdada;
  --color-primitive-red-200: #ffbbbb;
  --color-primitive-red-300: #ff9696;
  --color-primitive-red-400: #ff7171;
  --color-primitive-red-500: #ff5454;
  --color-primitive-red-600: #fe3939;
  --color-primitive-red-700: #fa0000;
  --color-primitive-red-800: #ec0000;
  --color-primitive-red-900: #ce0000;
  --color-primitive-red-1000: #a90000;
  --color-primitive-red-1100: #850000;
  --color-primitive-red-1200: #620000;
  --color-primitive-magenta-50: #f3e5f4;
  --color-primitive-magenta-100: #ffd0ff;
  --color-primitive-magenta-200: #ffaeff;
  --color-primitive-magenta-300: #ff8eff;
  --color-primitive-magenta-400: #f661f6;
  --color-primitive-magenta-500: #f137f1;
  --color-primitive-magenta-600: #db00db;
  --color-primitive-magenta-700: #c000c0;
  --color-primitive-magenta-800: #aa00aa;
  --color-primitive-magenta-900: #8b008b;
  --color-primitive-magenta-1000: #6c006c;
  --color-primitive-magenta-1100: #500050;
  --color-primitive-magenta-1200: #3b003b;
  --color-primitive-purple-50: #f1eafa;
  --color-primitive-purple-100: #ecddff;
  --color-primitive-purple-200: #ddc2ff;
  --color-primitive-purple-300: #cda6ff;
  --color-primitive-purple-400: #bb87ff;
  --color-primitive-purple-500: #a565f8;
  --color-primitive-purple-600: #8843e1;
  --color-primitive-purple-700: #6f23d0;
  --color-primitive-purple-800: #5c10be;
  --color-primitive-purple-900: #5109ad;
  --color-primitive-purple-1000: #41048e;
  --color-primitive-purple-1100: #30016c;
  --color-primitive-purple-1200: #21004b;
  --color-neutral-white: #ffffff;
  --color-neutral-black: #000000;
  --color-neutral-solid-gray-50: #f2f2f2;
  --color-neutral-solid-gray-100: #e6e6e6;
  --color-neutral-solid-gray-200: #cccccc;
  --color-neutral-solid-gray-300: #b3b3b3;
  --color-neutral-solid-gray-400: #999999;
  --color-neutral-solid-gray-420: #949494;
  --color-neutral-solid-gray-500: #7f7f7f;
  --color-neutral-solid-gray-536: #767676;
  --color-neutral-solid-gray-600: #666666;
  --color-neutral-solid-gray-700: #4d4d4d;
  --color-neutral-solid-gray-800: #333333;
  --color-neutral-solid-gray-900: #1a1a1a;
  --color-neutral-opacity-gray-50: rgba(0, 0, 0, 0.05);
  --color-neutral-opacity-gray-100: rgba(0, 0, 0, 0.1);
  --color-neutral-opacity-gray-200: rgba(0, 0, 0, 0.2);
  --color-neutral-opacity-gray-300: rgba(0, 0, 0, 0.3);
  --color-neutral-opacity-gray-400: rgba(0, 0, 0, 0.4);
  --color-neutral-opacity-gray-420: rgba(0, 0, 0, 0.42);
  --color-neutral-opacity-gray-500: rgba(0, 0, 0, 0.5);
  --color-neutral-opacity-gray-536: rgba(0, 0, 0, 0.54);
  --color-neutral-opacity-gray-600: rgba(0, 0, 0, 0.6);
  --color-neutral-opacity-gray-700: rgba(0, 0, 0, 0.7);
  --color-neutral-opacity-gray-800: rgba(0, 0, 0, 0.8);
  --color-neutral-opacity-gray-900: rgba(0, 0, 0, 0.9);
  --font-family-sans: 'Noto Sans JP', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-family-mono: 'Noto Sans Mono', monospace;
  --elevation-1: 0 2px 8px 1px rgba(0,0,0,0.1), 0 1px 5px 0 rgba(0,0,0,0.3);
  --elevation-2: 0 2px 12px 2px rgba(0,0,0,0.1), 0 1px 6px 0 rgba(0,0,0,0.3);
  --elevation-3: 0 4px 16px 3px rgba(0,0,0,0.1), 0 1px 6px 0 rgba(0,0,0,0.3);
  --elevation-4: 0 6px 20px 4px rgba(0,0,0,0.1), 0 2px 6px 0 rgba(0,0,0,0.3);
  --elevation-5: 0 8px 24px 5px rgba(0,0,0,0.1), 0 2px 10px 0 rgba(0,0,0,0.3);
  --elevation-6: 0 10px 30px 6px rgba(0,0,0,0.1), 0 3px 12px 0 rgba(0,0,0,0.3);
  --elevation-7: 0 12px 36px 7px rgba(0,0,0,0.1), 0 3px 14px 0 rgba(0,0,0,0.3);
  --elevation-8: 0 14px 40px 7px rgba(0,0,0,0.1), 0 3px 16px 0 rgba(0,0,0,0.3);
  --color-semantic-success-1: var(--color-primitive-green-600);
  --color-semantic-success-2: var(--color-primitive-green-800);
  --color-semantic-error-1: var(--color-primitive-red-800);
  --color-semantic-error-2: var(--color-primitive-red-900);
  --color-semantic-warning-yellow-1: var(--color-primitive-yellow-700);
  --color-semantic-warning-yellow-2: var(--color-primitive-yellow-900);
  --color-semantic-warning-orange-1: var(--color-primitive-orange-600);
  --color-semantic-warning-orange-2: var(--color-primitive-orange-800);
  --color-key-50: var(--color-primitive-blue-50);
  --color-key-100: var(--color-primitive-blue-100);
  --color-key-200: var(--color-primitive-blue-200);
  --color-key-300: var(--color-primitive-blue-300);
  --color-key-400: var(--color-primitive-blue-400);
  --color-key-500: var(--color-primitive-blue-500);
  --color-key-600: var(--color-primitive-blue-600);
  --color-key-700: var(--color-primitive-blue-700);
  --color-key-800: var(--color-primitive-blue-800);
  --color-key-900: var(--color-primitive-blue-900);
  --color-key-1000: var(--color-primitive-blue-1000);
  --color-key-1100: var(--color-primitive-blue-1100);
  --color-key-1200: var(--color-primitive-blue-1200);
}

/*
 * mrlgss SSG 本文スタイル。
 * デジタル庁デザインシステムのトークン（@digital-go-jp/design-tokens の tokens-simple.css、
 * ビルド時に前置結合）を参照しつつ、素のセマンティック HTML（article/table/dl/nav 等）に
 * 直接効く最小限のスタイルのみを定義する。bunsen の admin UI 用クラス CSS は持ち込まない。
 */

:root {
  --mrlgss-fg: var(--color-neutral-solid-gray-900, #1a1a1a);
  --mrlgss-muted: var(--color-neutral-solid-gray-600, #666);
  --mrlgss-border: var(--color-neutral-solid-gray-300, #b3b3b3);
  --mrlgss-border-light: var(--color-neutral-solid-gray-200, #ccc);
  --mrlgss-bg: #fff;
  --mrlgss-bg-subtle: var(--color-neutral-solid-gray-50, #f2f2f2);
  --mrlgss-link: var(--color-primitive-blue-800, #0031d8);
  --mrlgss-link-visited: var(--color-primitive-blue-1000, #00118f);
  --mrlgss-accent: var(--color-primitive-blue-700, #264af4);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-size: 16px;
}

body {
  margin: 0;
  color: var(--mrlgss-fg);
  background: var(--mrlgss-bg);
  line-height: 1.7;
  font-family:
    system-ui, -apple-system, "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
}

/* ==== レイアウト ==== */
main {
  max-width: 56rem;
  margin: 0 auto;
  padding: 1rem 1.25rem 4rem;
}

article > :first-child {
  margin-top: 0;
}

/* 2 カラム（サイドバー付きページ）。サイドバーが無いページは従来の 1 カラム main のまま。 */
.layout {
  max-width: 78rem;
  margin: 0 auto;
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
}

.layout main {
  margin: 0;
  flex: 1 1 auto;
  min-width: 0;
}

.sidebar {
  flex: 0 0 17rem;
  position: sticky;
  top: 0;
  max-height: 100vh;
  overflow-y: auto;
  padding: 1rem 0.5rem 2rem 1.25rem;
  font-size: 0.9rem;
  border-right: 1px solid var(--mrlgss-border-light);
}

@media (max-width: 60rem) {
  .layout {
    display: block;
  }
  .sidebar {
    position: static;
    max-height: none;
    border-right: none;
    border-bottom: 1px solid var(--mrlgss-border-light);
    padding: 0.5rem 1.25rem;
  }
}

/* ==== 仕様書サイドバー（nayose 風 章ナビ + 見出しアウトライン） ==== */
.spec-nav-top {
  font-weight: 700;
  margin: 0 0 0.5rem;
}

.spec-nav .chapters {
  list-style: none;
  margin: 0;
  padding: 0;
}

.spec-nav .chapters > li {
  margin: 0.1rem 0;
}

.spec-nav .chapters > li > a {
  display: block;
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  color: var(--mrlgss-fg);
  text-decoration: none;
}

.spec-nav .chapters > li > a:hover {
  background: var(--mrlgss-bg-subtle);
}

.spec-nav .chapters > li.active > a,
.spec-nav .chapters > li > a[aria-current="page"] {
  background: var(--mrlgss-bg-subtle);
  font-weight: 700;
  color: var(--mrlgss-link);
}

.spec-nav .outline {
  list-style: none;
  margin: 0.2rem 0 0.4rem;
  padding: 0 0 0 0.5rem;
  border-left: 2px solid var(--mrlgss-border-light);
}

.spec-nav .outline li {
  margin: 0.05rem 0;
}

.spec-nav .outline a {
  display: block;
  padding: 0.1rem 0.4rem;
  color: var(--mrlgss-muted);
  text-decoration: none;
  font-size: 0.85rem;
}

.spec-nav .outline a:hover {
  color: var(--mrlgss-link);
}

.spec-nav .outline .lvl-3 {
  padding-left: 0.75rem;
}

.spec-nav .outline .lvl-4,
.spec-nav .outline .lvl-5,
.spec-nav .outline .lvl-6 {
  padding-left: 1.5rem;
}

/* アンカー遷移時に見出しがパンくず等で隠れないよう余白を確保。 */
:target {
  scroll-margin-top: 1rem;
}

/* ==== パンくず ==== */
nav[aria-label="パンくず"] {
  max-width: 56rem;
  margin: 0 auto;
  padding: 0.75rem 1.25rem;
  border-bottom: 1px solid var(--mrlgss-border-light);
  font-size: 0.875rem;
}

nav[aria-label="パンくず"] ol {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem 0.5rem;
}

nav[aria-label="パンくず"] li {
  display: flex;
  align-items: center;
}

nav[aria-label="パンくず"] li:not(:last-child)::after {
  content: "›";
  margin-left: 0.5rem;
  color: var(--mrlgss-muted);
}

nav[aria-label="パンくず"] [aria-current="page"] {
  color: var(--mrlgss-muted);
}

/* ==== 見出し ==== */
h1,
h2,
h3,
h4 {
  line-height: 1.4;
  font-weight: 700;
}

h1 {
  font-size: 1.75rem;
  margin: 0 0 1.25rem;
  padding-bottom: 0.4rem;
  border-bottom: 2px solid var(--mrlgss-accent);
}

h2 {
  font-size: 1.4rem;
  margin: 2rem 0 0.75rem;
}

h3 {
  font-size: 1.15rem;
  margin: 1.5rem 0 0.5rem;
}

p {
  margin: 0.75rem 0;
}

/* ==== リンク ==== */
a {
  color: var(--mrlgss-link);
  text-underline-offset: 0.15em;
}

a:visited {
  color: var(--mrlgss-link-visited);
}

a:hover {
  text-decoration: none;
}

/* ==== リスト ==== */
ul,
ol {
  padding-left: 1.5rem;
}

li {
  margin: 0.25rem 0;
}

/* ==== 定義リスト（ランディングのメタ表示） ==== */
dl {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.4rem 1rem;
  margin: 1.25rem 0;
}

dt {
  font-weight: 700;
  color: var(--mrlgss-muted);
}

dd {
  margin: 0;
}

/* ==== 表 ==== */
table {
  border-collapse: collapse;
  margin: 1rem 0;
  font-size: 0.9rem;
  display: block;
  max-width: 100%;
  overflow-x: auto;
}

/* ビルド時に SVG 化した図（mermaid / graphviz）。横幅に追従、はみ出しはスクロール。 */
figure.diagram {
  margin: 1.25rem 0;
  max-width: 100%;
  overflow-x: auto;
}

figure.diagram svg {
  max-width: 100%;
  height: auto;
}

th,
td {
  border: 1px solid var(--mrlgss-border);
  padding: 0.4rem 0.6rem;
  text-align: left;
  vertical-align: top;
}

thead th {
  background: var(--mrlgss-bg-subtle);
  position: sticky;
  top: 0;
}

caption {
  caption-side: top;
  text-align: left;
  color: var(--mrlgss-muted);
  margin-bottom: 0.4rem;
}

/* ==== コード ==== */
code {
  font-family: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
  font-size: 0.9em;
  background: var(--mrlgss-bg-subtle);
  padding: 0.1em 0.3em;
  border-radius: 0.2em;
}

pre {
  background: var(--mrlgss-bg-subtle);
  padding: 0.75rem 1rem;
  border-radius: 0.4rem;
  overflow-x: auto;
}

pre code {
  background: none;
  padding: 0;
}

/* ==== ルビ ==== */
ruby {
  ruby-position: over;
  ruby-align: center;
}

rt {
  font-size: 0.6em;
}

/* ==== 引用・区切り ==== */
blockquote {
  margin: 1rem 0;
  padding: 0.25rem 1rem;
  border-left: 4px solid var(--mrlgss-border);
  color: var(--mrlgss-muted);
}

hr {
  border: none;
  border-top: 1px solid var(--mrlgss-border-light);
  margin: 2rem 0;
}

/* ==== 汎用ストリーミング・データテーブル（data-table.mjs） ==== */
.dt-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin: 1rem 0 0.5rem;
}

.dt-count {
  color: var(--mrlgss-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.dt-search {
  flex: 1 1 16rem;
  min-width: 12rem;
  padding: 0.3rem 0.5rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 0.3rem;
  font: inherit;
}

.dt-filter {
  padding: 0.3rem 0.5rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 0.3rem;
  font: inherit;
}

.dt-viewport {
  height: 70vh;
  overflow: auto;
  border: 1px solid var(--mrlgss-border);
  border-radius: 0.4rem;
}

.dt-spacer {
  position: relative;
}

.dt-layer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  will-change: transform;
}

.dt-row {
  display: flex;
  height: 32px; /* data-table.mjs の ROW_HEIGHT と一致させる。 */
  align-items: center;
  border-bottom: 1px solid var(--mrlgss-border-light);
}

.dt-head {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--mrlgss-bg-subtle);
  font-weight: 600;
  border-bottom: 2px solid var(--mrlgss-border);
}

.dt-cell {
  flex: 1 1 0;
  padding: 0 0.6rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 0.9rem;
}

.dt-glyph {
  flex: 0 0 3rem;
  text-align: center;
  font-size: 1.4rem;
  /* mrlgss-mj（IPAmj明朝サブセット）/ mrlgss-gj（行政事務標準明朝サブセット）を
     unicode-range で出し分け。OS フォントへフォールバック。 */
  font-family: "mrlgss-mj", "mrlgss-gj", serif;
}

.dt-status {
  color: var(--mrlgss-muted);
}

/* ==== payload テーブル（ビルド時描画 + payload-table.mjs で対話化） ==== */
.pt-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin: 1rem 0 0.5rem;
}

.pt-count {
  color: var(--mrlgss-muted);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.pt-search {
  flex: 1 1 16rem;
  min-width: 12rem;
  padding: 0.3rem 0.5rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 0.3rem;
  font: inherit;
}

.pt-filter {
  padding: 0.3rem 0.5rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 0.3rem;
  font: inherit;
}

.pt-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}

.pt-table thead th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: var(--mrlgss-bg-subtle);
  text-align: left;
  font-weight: 600;
  padding: 0.4rem 0.6rem;
  border-bottom: 2px solid var(--mrlgss-border);
}

.pt-row {
  cursor: pointer;
  border-bottom: 1px solid var(--mrlgss-border-light);
}

.pt-row:hover {
  background: var(--mrlgss-bg-subtle);
}

.pt-row:focus-visible {
  outline: 2px solid var(--mrlgss-link, #0017c1);
  outline-offset: -2px;
}

.pt-row > td {
  padding: 0.35rem 0.6rem;
  vertical-align: top;
}

/* 展開可能な行に控えめな三角マーカーを最初のセルへ。 */
.pt-row > td:first-child::before {
  content: "\25b8"; /* ▸ */
  display: inline-block;
  width: 1em;
  color: var(--mrlgss-muted);
  transition: transform 0.1s ease;
}

.pt-row[aria-expanded="true"] > td:first-child::before {
  transform: rotate(90deg);
}

.pt-detail > td {
  padding: 0.5rem 0.6rem 0.8rem 2.2rem;
  background: var(--mrlgss-bg-subtle);
  border-bottom: 1px solid var(--mrlgss-border-light);
}

.pt-detail-dl {
  margin: 0;
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.2rem 1rem;
}

.pt-field {
  display: contents;
}

.pt-detail-dl dt {
  font-weight: 600;
  color: var(--mrlgss-muted);
  white-space: nowrap;
}

.pt-detail-dl dd {
  margin: 0;
}

.pt-list {
  margin: 0;
  padding-left: 1.1rem;
}

.pt-tag {
  display: inline-block;
  margin-left: 0.4rem;
  padding: 0 0.4rem;
  border-radius: 0.2rem;
  background: var(--mrlgss-bg-subtle);
  border: 1px solid var(--mrlgss-border);
  font-size: 0.8em;
  font-variant-numeric: tabular-nums;
}

.pt-muted {
  color: var(--mrlgss-muted);
}

.pt-codevalues {
  border-collapse: collapse;
}

.pt-codevalues td {
  padding: 0.1rem 0.6rem 0.1rem 0;
  vertical-align: top;
}

.pt-code-key {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  white-space: nowrap;
}

/* ブラウザ内検索 UI（search.mjs がマウントを操作）。 */
.search-form {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 1rem 0;
}

.search-input {
  flex: 1 1 16rem;
  padding: 0.5rem 0.75rem;
  font-size: 1rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 4px;
}

.search-facet {
  padding: 0.5rem;
  border: 1px solid var(--mrlgss-border);
  border-radius: 4px;
}

.search-submit {
  padding: 0.5rem 1.2rem;
  font-size: 1rem;
  color: #fff;
  background: var(--mrlgss-accent);
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.search-status {
  color: var(--mrlgss-muted);
  font-size: 0.9rem;
}

.search-results {
  list-style: none;
  padding: 0;
  margin: 1rem 0;
}

.search-hit {
  padding: 0.75rem 0;
  border-bottom: 1px solid var(--mrlgss-border-light);
}

.search-hit-title {
  font-weight: 600;
}

.search-hit-meta {
  margin: 0.2rem 0;
  font-size: 0.8rem;
  color: var(--mrlgss-muted);
  font-variant-numeric: tabular-nums;
}

.search-hit-snippet {
  margin: 0.2rem 0 0;
  font-size: 0.9rem;
}
