* { box-sizing: border-box; }
    body {
      margin: 0; padding: 24px; font-family: Arial, Helvetica, sans-serif;
      line-height: 1.7; color: #1f2937; background: #f3f5f9;
    }
    main {
      max-width: 850px; margin: 0 auto; padding: clamp(22px, 5vw, 48px);
      background: #fff; border-radius: 18px; box-shadow: 0 10px 35px rgba(15, 23, 42, .08);
    }
    h1 { margin-top: 0; color: #172554; line-height: 1.2; }
    h2 { margin-top: 30px; color: #1e3a8a; font-size: 1.2rem; }
    p, li { color: #374151; }
    .meta { color: #6b7280; font-size: .95rem; }
    .notice {
      padding: 14px 16px; border-left: 4px solid #f59e0b;
      background: #fffbeb; border-radius: 6px;
    }
    a { color: #1d4ed8; overflow-wrap: anywhere; }
    footer { margin-top: 36px; padding-top: 18px; border-top: 1px solid #e5e7eb; color: #6b7280; font-size: .9rem; }
