/* owrawww - base styles */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body { font-family: 'Noto Sans KR', sans-serif; background: #f5f5f5; color: #333; }

/* nav */
header nav {
    display: flex; align-items: center; justify-content: space-between;
    padding: 12px 24px; background: #1e3a5f; color: #fff;
}
header nav a { color: #fff; text-decoration: none; margin-left: 12px; }

/* main */
main { max-width: 960px; margin: 40px auto; padding: 0 16px; }

/* login */
.login-wrap {
    max-width: 400px; margin: 80px auto; background: #fff;
    padding: 40px; border-radius: 8px; box-shadow: 0 2px 12px rgba(0,0,0,.1);
}
.login-wrap h2 { margin-bottom: 24px; text-align: center; }
.form-group { margin-bottom: 16px; }
.form-group label { display: block; margin-bottom: 4px; font-weight: 600; }
.form-group input {
    width: 100%; padding: 10px 12px; border: 1px solid #ccc;
    border-radius: 4px; font-size: 14px;
}
button[type=submit] {
    width: 100%; padding: 12px; background: #1e3a5f; color: #fff;
    border: none; border-radius: 4px; font-size: 16px; cursor: pointer;
    margin-top: 8px;
}
button[type=submit]:hover { background: #16304f; }

/* alerts */
.alert { padding: 10px 14px; border-radius: 4px; margin-bottom: 16px; font-size: 14px; }
.alert-error { background: #fde8e8; color: #c0392b; }
.alert-info  { background: #e8f4fd; color: #2980b9; }
