:root {
      color-scheme: light;
      --bg: #ffffff;
      --card: #ffffff;
      --text: #101828;
      --muted: #475467;
      --border: #e4e7ec;
      --accent: #0066cc;
      --accent-soft: #eaf3ff;
      --max-width: 760px;
    }

    * { box-sizing: border-box; }

    body {
      margin: 0;
      background: var(--bg);
      color: var(--text);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }

    main {
      width: min(var(--max-width), calc(100% - 32px));
      margin: 48px auto;
    }

    article {
      background: var(--card);
      border: 1px solid var(--border);
      border-radius: 18px;
      padding: 34px;
      box-shadow: 0 8px 28px rgba(0, 0, 0, 0.06);
    }

    h1, h2 {
      line-height: 1.25;
      letter-spacing: -0.015em;
    }

    h1 {
      margin: 0 0 6px;
      font-size: clamp(2rem, 6vw, 2.7rem);
    }

    h2 {
      margin: 34px 0 10px;
      font-size: 1.2rem;
    }

    p, li { font-size: 1rem; }

    a {
      color: var(--accent);
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
    }

    .app-name {
      color: var(--accent);
      font-weight: 700;
      margin: 0 0 2px;
    }

    .updated {
      color: var(--muted);
      margin: 0 0 28px;
    }

    .summary {
      background: var(--accent-soft);
      border: 1px solid color-mix(in srgb, var(--accent) 35%, transparent);
      border-radius: 14px;
      padding: 18px 20px;
      margin: 0 0 30px;
    }

    .summary p { margin: 0; }

    ul {
      padding-left: 1.35rem;
    }

    li + li { margin-top: 8px; }

    strong { color: var(--text); }

    .muted { color: var(--muted); }

    footer {
      color: var(--muted);
      font-size: 0.9rem;
      text-align: center;
      padding: 22px 0 6px;
    }

    @media (max-width: 560px) {
      main {
        width: min(100% - 20px, var(--max-width));
        margin: 18px auto 30px;
      }

      article {
        padding: 24px 20px;
        border-radius: 14px;
      }
    }
