/* おやしん 個別記事デザイン v2.2。承認済みトップページ画像の代表色を使用。 */
.oyat-article-page {
  --oyashin-green:#39713E;--oyashin-green-dark:#073526;--oyashin-green-light:#EFF5E8;
  --oyashin-brown:#7F573E;--oyashin-brown-light:#FBF4EB;--oyashin-cream:#FDFCF8;
  --oyashin-background:#FEFEFE;--oyashin-text:#2A3031;--oyashin-muted:#4E575C;
  --oyashin-border:#F3F1EE;--oyashin-warning:#7F573E;
}
.oyat-article-page .main-section { min-width:0; }
.oyat-article-page .siteContent { background:var(--oyashin-background); }
.oyat-breadcrumb { max-width:820px;margin-inline:auto;padding:1rem 14px;font-size:.86rem;color:var(--oyashin-muted);overflow-wrap:anywhere; }
.oyat-breadcrumb ol { display:flex;flex-wrap:wrap;gap:.3rem .55rem;padding:0;margin:0;list-style:none; }
.oyat-breadcrumb li + li::before { content:'›';margin-right:.55rem;color:var(--oyashin-brown); }
.oyat-breadcrumb a { color:var(--oyashin-green-dark); }
.oyat-article { width:min(calc(100% - 28px),780px);margin:0 auto 4.5rem;color:var(--oyashin-text);font-size:16px;line-height:1.85;overflow-wrap:anywhere; }
.oyat-article *,.oyat-article *::before,.oyat-article *::after { box-sizing:border-box; }
.oyat-article a { color:var(--oyashin-green-dark);text-decoration-thickness:1px;text-underline-offset:.18em; }
.oyat-article a:focus-visible,.oyat-breadcrumb a:focus-visible,.oyat-article summary:focus-visible,.oyat-table-scroll:focus-visible { outline:3px solid var(--oyashin-brown);outline-offset:3px; }
.oyat-article img,.oyat-article iframe,.oyat-article video { max-width:100%;height:auto; }
.oyat-article-header { margin:0 0 2.15rem;padding:1.05rem 1.45rem 1.2rem;border:1px solid var(--oyashin-border);border-radius:16px;background:var(--oyashin-cream); }
.oyat-phase { display:inline-flex;align-items:center;gap:.5rem;min-height:30px;margin:0 0 .55rem;font-size:.86rem;font-weight:700;color:var(--oyashin-green-dark); }
.oyat-phase img { width:22px;height:22px;flex:0 0 22px; }
.oyat-phase a { text-decoration:none; }
.oyat-phase-count { color:var(--oyashin-muted);font-weight:600;white-space:nowrap; }
.oyat-title { margin:0 0 .6rem;color:var(--oyashin-green-dark);font-size:clamp(1.75rem,2.5vw,2rem);line-height:1.38;letter-spacing:.01em;text-wrap:pretty; }
.oyat-lead { margin:0 0 .7rem;font-size:1.06rem;line-height:1.8; }
.oyat-review { margin:0;color:var(--oyashin-muted);font-size:.87rem; }
.oyat-deadline { display:flex;align-items:flex-start;gap:.8rem;margin:.95rem 0 0;padding:.8rem 1rem;border-left:4px solid var(--oyashin-brown);border-radius:8px;background:var(--oyashin-brown-light);font-size:.94rem; }
.oyat-deadline strong { flex:0 0 auto;color:var(--oyashin-brown); }
.oyat-deadline span { min-width:0; }
.oyat-overview { margin:1rem 0 0;padding:.85rem 1.15rem;border:1px solid #DDE9D8;border-radius:10px;background:#F7FAF3; }
.oyat-article-header .oyat-overview h2 { margin:0 0 .45rem;padding:0;border:0;background:none;box-shadow:none;color:var(--oyashin-green-dark);font-size:1.07rem;line-height:1.5; }
.oyat-article-header .oyat-overview h2::before,.oyat-article-header .oyat-overview h2::after { content:none; }
.oyat-overview ul { margin:0;padding-left:1.35rem; }
.oyat-overview li { margin:.3rem 0;font-size:.94rem;line-height:1.65; }
.oyat-overview li::marker { color:var(--oyashin-green); }
.oyat-body > :first-child { margin-top:0; }
.oyat-body p { margin:0 0 1.25rem; }
body.oyat-article-page .oyat-article .oyat-body h2,body.oyat-article-page .oyat-article .oyat-related h2 { margin:2.6rem 0 1rem;padding:.25rem 0 .35rem .85rem;border:0;border-left:4px solid var(--oyashin-green);border-bottom:1px solid #DDE9D8;background:none;box-shadow:none;color:var(--oyashin-green-dark);font-size:clamp(1.28rem,2vw,1.52rem);line-height:1.5; }
body.oyat-article-page .oyat-article .oyat-body h2::before,body.oyat-article-page .oyat-article .oyat-body h2::after,body.oyat-article-page .oyat-article .oyat-body h3::before,body.oyat-article-page .oyat-article .oyat-body h3::after,body.oyat-article-page .oyat-article .oyat-related h2::before,body.oyat-article-page .oyat-article .oyat-related h2::after { content:none; }
body.oyat-article-page .oyat-article .oyat-body h3 { margin:1.9rem 0 .65rem;padding:0;border:0;background:none;box-shadow:none;color:var(--oyashin-green-dark);font-size:1.13rem;line-height:1.5; }
.oyat-body ul,.oyat-body ol { margin:0 0 1.5rem;padding-left:1.55rem; }
.oyat-body li { margin:.48rem 0;padding-left:.08rem; }
.oyat-body li::marker { color:var(--oyashin-green);font-weight:700; }
.oyat-body pre,.oyat-body code { overflow-wrap:normal; }
.oyat-body pre { max-width:100%;overflow-x:auto;padding:1rem;background:var(--oyashin-cream); }
.oyat-panel { margin:2rem 0;padding:1.1rem 1.35rem;border-radius:12px; }
body.oyat-article-page .oyat-article .oyat-body .oyat-panel > h2 { margin:0 0 .75rem;font-size:1.33rem; }
.oyat-panel > :last-child { margin-bottom:0; }
.oyat-panel-intro { border:1px solid #DDE9D8;background:var(--oyashin-green-light); }
.oyat-panel-intro > h2 { border-color:var(--oyashin-green); }
.oyat-panel-caution { border:1px solid #E9DBCF;background:var(--oyashin-brown-light); }
.oyat-panel-caution > h2 { border-color:var(--oyashin-brown); }
.oyat-faq { border:1px solid var(--oyashin-border);background:var(--oyashin-cream); }
.oyat-faq > h2 { border-color:var(--oyashin-green); }
.oyat-faq-item { margin:.55rem 0;border:1px solid #DDE9D8;border-radius:8px;background:#fff; }
.oyat-faq-item summary { display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:48px;padding:.7rem .9rem;list-style:none;cursor:pointer;color:var(--oyashin-green-dark);font-weight:700;line-height:1.55;overflow-wrap:anywhere; }
.oyat-faq-item summary::-webkit-details-marker { display:none; }
.oyat-faq-item summary::after { content:'＋';flex:0 0 auto;color:var(--oyashin-green);font-size:1rem;font-weight:500; }
.oyat-faq-item[open] summary::after { content:'−'; }
.oyat-faq-item summary:hover { background:var(--oyashin-green-light); }
.oyat-faq-answer { padding:.2rem .9rem .85rem;border-top:1px solid #DDE9D8;overflow-wrap:anywhere; }
.oyat-faq-answer > :last-child { margin-bottom:0; }
.oyat-sources { border:1px solid #DDE9D8;background:#F8FAF6; }
.oyat-sources > h2 { border-color:var(--oyashin-green); }
.oyat-sources ul,.oyat-sources-title + .oyat-sources-list { margin:0;padding-left:1.35rem;border:0;background:transparent; }
.oyat-sources li { padding:.35rem 0;border-bottom:1px solid #E7EBE3; }
.oyat-sources li:last-child { border-bottom:0; }
.oyat-sources a[data-oyashin-official-url] { overflow-wrap:anywhere;word-break:break-word; }
.oyat-sources a[data-oyashin-official-url]::after { content:' ↗';white-space:nowrap;font-size:.75em;font-weight:500;color:var(--oyashin-muted); }
.oyat-sources a[data-oyashin-official-url]:hover { text-decoration-thickness:2px; }
.oyat-sources a[data-oyashin-official-url]:focus-visible { outline:3px solid var(--oyashin-brown);outline-offset:3px; }
.oyat-dialogue { margin:2.4rem 0;clear:both; }
body.oyat-article-page .oyat-article .oyat-body .oyat-dialogue h2 { margin:0 0 .9rem; }
.oyat-dialogue-card { min-width:0;display:block;margin:.7rem 0;padding:.95rem 1.1rem;border:1px solid var(--oyashin-border);border-left:4px solid var(--oyashin-brown);border-radius:10px;background:var(--oyashin-brown-light); }
.oyat-dialogue-guide { border-color:#DDE9D8;border-left-color:var(--oyashin-green);background:var(--oyashin-green-light); }
.oyat-dialogue-has-avatar { display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;column-gap:.85rem; }
.oyat-dialogue-avatar { display:block;width:48px;height:48px;object-fit:cover;object-position:center 20%;border:1px solid var(--oyashin-border);border-radius:50%;background:var(--oyashin-cream); }
.oyat-dialogue-message { min-width:0;overflow-wrap:anywhere; }
.oyat-dialogue-message p { margin:0; }
.oyat-table-scroll { max-width:100%;overflow-x:auto;margin:1.4rem 0;border:1px solid var(--oyashin-border);border-radius:8px; }
.oyat-table-scroll table { width:max-content;min-width:100%;max-width:none;border-collapse:collapse; }
.oyat-table-scroll th,.oyat-table-scroll td { padding:.6rem .8rem;border:1px solid #E2E5DE;vertical-align:top; }
.oyat-table-scroll th { background:var(--oyashin-green-light); }
.oyat-related { margin:3.2rem 0 0;padding-top:.2rem;border-top:1px solid var(--oyashin-border); }
body.oyat-article-page .oyat-article .oyat-related h2 { margin:1.4rem 0 1rem; }
.oyat-related ul { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0;padding:0;list-style:none; }
.oyat-related li { min-width:0;margin:0; }
.oyat-related li a { display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:54px;padding:.7rem .9rem;border:1px solid #DDE9D8;border-radius:9px;background:var(--oyashin-cream);text-decoration:none;font-weight:700;line-height:1.5; }
.oyat-related li a span:first-child { min-width:0; }
.oyat-related li a span:last-child { flex:0 0 auto;color:var(--oyashin-green);font-size:1.4rem; }
.oyat-related li a:hover { background:var(--oyashin-green-light); }
@media (max-width:600px) {
  .oyat-article { width:min(calc(100% - 24px),780px);font-size:16px;line-height:1.8;margin-bottom:3rem; }
  .oyat-article-header { padding:1rem;border-radius:12px;margin-bottom:2rem; }
  .oyat-title { font-size:clamp(1.7rem,7vw,2rem); }
  .oyat-lead { font-size:1rem; }
  .oyat-deadline { display:block; }
  .oyat-deadline strong { display:block;margin-bottom:.15rem; }
  .oyat-panel { padding:.9rem 1rem; }
  body.oyat-article-page .oyat-article .oyat-body h2,body.oyat-article-page .oyat-article .oyat-related h2 { margin-top:2.1rem; }
  .oyat-dialogue-card { padding:.8rem .85rem; }
  .oyat-dialogue-has-avatar { grid-template-columns:40px minmax(0,1fr);column-gap:.6rem; }
  .oyat-dialogue-avatar { width:40px;height:40px; }
  .oyat-related ul { grid-template-columns:1fr; }
}


/* Dedicated article pages always use one readable column. The standard
 * Lightning sidebar remains untouched on pages outside this template. */
body.oyat-article-page .main-section {
  flex:0 0 100% !important;
  width:100% !important;
  max-width:100% !important;
}
body.oyat-article-page .sub-section { display:none !important; }
