
    :root {
      --bg: #ffffff;
      --text: #222222;
      --muted: #555555;
      --primary: #1f56a8;
      --primary-dark: #143b78;
      --border: #e5e7eb;
      --card: #f8fafc;
      --cta: #2563eb;
      --cta-hover: #1d4ed8;
      --warning-bg:#fffbeb;
      --warning-border:#fcd34d;
      --info-bg:#eff6ff;
      --info-border:#bfdbfe;
      --danger-bg:#fef2f2;
      --danger-border:#fecdd3;
    }
    * { box-sizing: border-box; margin: 0; padding: 0; }
    body {
      font-family: "Lato", sans‑serif;
      background: var(--bg);
      color: var(--text);
      line-height: 1.7;
    }
    .container {
      width: min(1140px, 92%);
      margin: 0 auto;
      padding: 0 1rem;
    }
    header {
      padding: 2.2rem 0 1rem;
      border-bottom: 1px solid var(--border);
    }
    .site-brand {
      font-weight: 900;
      font-size: 1.4rem;
      color: var(--primary);
      text-decoration: none;
    }
    main { padding: 3rem 0 4rem; }
    h1 {
      font-size: clamp(1.6rem, 3vw, 2.2rem);
      margin-bottom: 1.2rem;
      font-weight: 900;
    }
    h2 {
      font-size: clamp(1.25rem, 2vw, 1.55rem);
      margin: 2rem 0 0.8rem;
      font-weight: 700;
      color: var(--primary-dark);
    }
    h3 {
      font-size: clamp(1.02rem,1.4vw,1.18rem);
      margin:1.3rem 0 0.6rem;
      font-weight:700;
    }
    p { margin-bottom: 1.1rem; color: var(--text); }
    ul,ol {
      margin:0 0 1.2rem 1.7rem;
    }
    li {margin-bottom:0.5rem;}
    table{
      width:100%;
      border-collapse:collapse;
      margin:1.4rem 0;
    }
    th,td{
      border:1px solid var(--border);
      padding:10px 12px;
      text-align:left;
    }
    th{background:#f3f4f6;}
    .card {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: 12px;
      padding: 1.5rem;
      margin: 1.5rem 0;
    }
    .warn {
      font-size:0.95rem;
      background: var(--warning-bg);
      border:1px solid var(--warning-border);
      padding:1rem;
      border-left:4px solid #f59e0b;
      border-radius:6px;
      margin:1.2rem 0;
    }
    .danger {
      font-size:0.95rem;
      background: var(--danger-bg);
      border:1px solid var(--danger-border);
      padding:1rem;
      border-left:4px solid #ef4444;
      border-radius:6px;
      margin:1.2rem 0;
    }
    .note {
      font-size:0.95rem;
      background: var(--info-bg);
      border:1px solid var(--info-border);
      padding:1rem;
      border-left:4px solid var(--primary);
      border-radius:6px;
      margin:1.2rem 0;
    }
    footer {
      border-top:1px solid var(--border);
      padding:2rem 0;
      color:var(--muted);
      font-size:0.9rem;
    }
    .related-links a {
      color:var(--primary);
      text-decoration:none;
    }
    .related-links a:hover {text-decoration:underline;}
    @media print {
      header,footer {display:none;}
      body {font-size:10pt;}
      .card {border:none;padding:0;}
    }
  