/* ========= CSS Variables ========= */
    :root{
      --bg:#ffffff;
      --ink:#111;
      --muted:#666;
      --pill:#000;
      --card-radius:26px;
      --button-radius:24px;
    }

    /* ========= Reset / Base ========= */
    *{ box-sizing:border-box; }
    html,body{ height:100%; }
    body{
      margin:0;
      font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans JP", Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
      color:var(--ink);
      background:var(--bg);
      -webkit-font-smoothing:antialiased;
      -webkit-text-size-adjust:100%;
    }

    /* iOS 100vh対策: 画面高をCSS変数に格納 */
    .screen{
      min-height:100dvh; /* modern */
      min-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));
      padding: max(20px, env(safe-area-inset-top)) 18px calc(16px + env(safe-area-inset-bottom));
      max-width:430px;
      margin:0 auto;
      display:flex;
      flex-direction:column;
      gap:18px;
    }

    /* ========= Header ========= */
    .header-logo{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:10px;
      margin:10px auto 0; /* ← autoで左右中央寄せ */
      width: 80px;
    }
    .lead{
      text-align:center;
      margin-top:6px;
      line-height:1.6;
      color:var(--ink);
      font-size:16px;
    }
    .title{
      font-weight:700;
      font-size:22px;
      letter-spacing:0.04em;
    }