:root { color-scheme: light; --ink:#172033; --muted:#5f6b7a; --line:#d8dee8; --panel:#f6f8fb; --accent:#2457d6; --warn:#8a4b08; --warn-bg:#fff5df; }
      * { box-sizing:border-box; }
      body { margin:0; font-family:system-ui,-apple-system,"Segoe UI",sans-serif; color:var(--ink); background:#fff; line-height:1.6; }
      main { width:min(940px,calc(100% - 32px)); margin:0 auto; padding:32px 0 56px; }
      a { color:var(--accent); overflow-wrap:anywhere; }
      .crumbs { display:flex; gap:12px; flex-wrap:wrap; font-size:.9rem; margin-bottom:24px; }
      .badge { display:inline-block; padding:5px 10px; border:1px solid #e6b85c; border-radius:999px; color:var(--warn); background:var(--warn-bg); font-weight:700; }
      h1 { margin:14px 0 2px; font-size:clamp(1.8rem,5vw,3rem); line-height:1.15; }
      .ja-name { margin:0; color:var(--muted); font-size:1.1rem; }
      .lead { margin:24px 0; font-size:1.05rem; }
      .meta { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; margin:24px 0; }
      .meta div,.panel { border:1px solid var(--line); border-radius:12px; padding:16px; background:var(--panel); }
      dt { color:var(--muted); font-size:.82rem; }
      dd { margin:4px 0 0; font-weight:700; }
      table { width:100%; border-collapse:collapse; background:#fff; }
      th,td { padding:12px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
      th { color:var(--muted); font-size:.85rem; }
      .table-wrap { overflow-x:auto; border:1px solid var(--line); border-radius:12px; }
      section { margin-top:32px; }
      .notice { border-left:4px solid #e6b85c; background:var(--warn-bg); padding:16px; }
      footer { margin-top:40px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:.9rem; }
