/* ===== 기본 리셋 및 공통 스타일 (필수 추가) ===== */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Noto Sans KR', sans-serif; color: #1a202c; line-height: 1.6; }
a { text-decoration: none; color: inherit; }

/* 버튼 공통 스타일 (기존 style.css에서 가져옴) */
.btn {
  display: inline-block;
  padding: 0.85rem 2rem;
  border-radius: 4px;
  font-weight: 600;
  font-size: 0.95rem;
  transition: all 0.25s;
  cursor: pointer;
  border: 2px solid transparent;
  text-align: center;
}
.btn-primary { background: #00c2cb; color: #0f1923; border: none; }
.btn-primary:hover { background: #00a8b0; }
.btn-full { width: 100%; display: block; }

/* ===== 로그인 전용 추가 스타일 ===== */
.login-page {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0f1923; 
  padding: 2rem;
}

.login-container {
  background: #fff;
  width: 100%;
  max-width: 400px;
  padding: 2.5rem;
  border-radius: 12px;
  box-shadow: 0 20px 40px rgba(0,0,0,0.4);
}

.login-header {
  text-align: center;
  margin-bottom: 2rem;
}

.logo-main {
  font-weight: 800;
  letter-spacing: -0.5px;
}

.login-header h2 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #0f1923;
  margin-top: 0.5rem;
}

.login-header p {
  color: #64748b;
  font-size: 0.9rem;
  margin-top: 0.5rem;
}

.login-form .form-group {
  margin-bottom: 1.25rem;
}

.login-form label {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  color: #0f1923;
  margin-bottom: 0.5rem;
  text-align: left; /* 라벨 왼쪽 정렬 */
}

.login-form input {
  width: 100%;
  padding: 0.9rem;
  border: 1.5px solid #dde6ee;
  border-radius: 6px;
  font-family: inherit;
  font-size: 1rem;
}

.login-form input:focus {
  outline: none;
  border-color: #00c2cb;
  box-shadow: 0 0 0 3px rgba(0,194,203,0.1);
}

.login-footer {
  margin-top: 1.5rem;
  text-align: center;
  font-size: 0.85rem;
  color: #64748b;
}

.login-footer a {
  color: #00c2cb;
  font-weight: 600;
  margin-left: 0.5rem;
}

/* 모바일 대응 */
@media (max-width: 480px) {
  .login-container {
    padding: 1.5rem;
  }
}