    * { box-sizing: border-box; }

    html, body {
      margin: 0;
      padding: 0;
      height: 100%;
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      background: linear-gradient(135deg, #f5f7fa, #c3cfe2);
      font-family: 'Noto Sans KR', sans-serif;
      overflow-x: hidden;
    }

    .card {
      width: 100%;
      max-width: 700px;
      background: #ecf0f3;  
      padding: 2.5rem;
      border-radius: 20px;
      box-shadow: 0 10px 25px rgba(0,0,0,0.1);
      text-align: center;
    }

    .card img {
      max-width: 160px;
      margin-bottom: 2rem;
    }

    .form-group {
      margin-bottom: 1.5rem;
      text-align: left;
    }

    .form-group input {
      width: 100%;
      padding: 0.9rem 1rem;
      border: 1px solid #ddd;
      border-radius: 12px;
      font-size: 1rem;
      outline: none;
      transition: border-color 0.2s;
    }

    .form-group input:focus {
      border-color: #4a90e2;
    }

    .btn {
      width: 100%;
      padding: 1rem;
      border: none;
      border-radius: 12px;
      font-size: 1rem;
      cursor: pointer;
      margin-bottom: 1rem;
      transition: all 0.3s ease;
    }

    .btn-blue {
      background: #4a90e2;
      color: #fff;
    }

    .btn-blue:hover {
      background: #357abd;
    }

    .btn-gold {
      background: #f5a623;
      color: #fff;
    }

    .btn-gold:hover {
      background: #d48806;
    }

    footer {
      margin-top: 1rem;
      font-size: 0.8rem;
      color: #666;
    }

    @media (max-width: 480px) {
      .card {
        padding: 2rem 1.5rem;
        border-radius: 15px;
      }
      .btn {
        font-size: 0.95rem;
        padding: 0.85rem;
      }
    }