
* { box-sizing: border-box; }
      html, body {
        margin: 0;
        padding: 0;
        background: transparent;
        overflow: hidden;
        letter-spacing: 0;
      }
      body {
        color: var(--text);
        font-family: Pretendard, "Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", sans-serif;
        word-break: keep-all;
        overflow-wrap: anywhere;
      }
      .diagram {
        width: 100%;
        display: grid;
        gap: 14px;
        padding: 16px;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--paper);
        contain: layout paint;
      }
      .next-ch4-ch4-3-header {
        display: grid;
        gap: 10px;
      }
      h1, p { margin: 0; }
      h1 {
        color: var(--text);
        font-size: 24px;
        line-height: 1.25;
      }
      .next-ch4-ch4-3-lead {
        color: var(--muted);
        font-size: 13px;
        line-height: 1.55;
      }
      .next-ch4-ch4-3-table-wrap {
        overflow: hidden;
        border: 1px solid var(--line);
        border-radius: 8px;
        background: var(--paper);
      }
      table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
      }
      th, td {
        padding: 10px 11px;
        border-bottom: 1px solid var(--line-muted);
        text-align: left;
        vertical-align: top;
        font-size: 13px;
        line-height: 1.5;
      }
      th {
        border-bottom-color: var(--line);
        color: var(--text);
        font-weight: 800;
      }
      tr:last-child td { border-bottom: 0; }
      code {
        font-family: "SFMono-Regular", Consolas, monospace;
        font-size: 12px;
        color: var(--text);
      }
      @media (max-width: 720px) {
        .diagram {
          gap: 12px;
          padding: 12px;
        }
        h1 { font-size: 21px; }
        .next-ch4-ch4-3-table-wrap {
          border: 0;
          border-radius: 0;
        }
        table, thead, tbody, tr, th, td { display: block; }
        thead { display: none; }
        tr {
          overflow: hidden;
          margin-bottom: 10px;
          border: 1px solid var(--line);
          border-radius: 8px;
          background: var(--paper);
        }
        tr:last-child { margin-bottom: 0; }
        td {
          display: block;
          padding: 8px 10px;
          border-bottom: 1px solid var(--line-muted);
        }
        td:last-child { border-bottom: 0; }
        td::before {
          content: attr(data-label);
          display: block;
          margin-bottom: 3px;
          color: var(--muted);
          font-size: 12px;
          font-weight: 800;
        }
      }
