body.register {
    margin: 0;
    font-family: 'Shippori Mincho', serif;
    background: url('../img/stars_bg.png') no-repeat center center;
    background-size: cover;
    color: #e0e8ff;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

/* 登録フォーム全体 */
.register main {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2em 1em;
}

/* フォームボックス */
.register-form-box {
    background: rgba(0, 0, 32, 0.6);
    padding: 2em 2.5em;
    border-radius: 1em;
    max-width: 500px;
    width: 100%;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.05);
}

/* タイトル */
.register-form-box h1 {
    text-align: center;
    margin-bottom: 1.5em;
    font-size: 1.6em;
    color: #fff;
}

/* ラベルとインプット */
.register-form-box label {
    display: block;
    margin-bottom: 1.2em;
    font-size: 0.95em;
}

.register-form-box input,
.register-form-box select {
    width: 100%;
    padding: 0.6em;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-family: inherit;
    font-size: 1em;
    background: #111122;
    color: #e0e8ff;
}

/* 登録ボタン */
.register-form-box button[type="submit"] {
    margin-top: 1em;
    width: 100%;
    background: rgba(255, 255, 255, 0.1);
    color: #e0e8ff;
    padding: 0.8em;
    border: 2px solid #e0e8ff;
    border-radius: 50px;
    font-size: 1.1em;
    text-decoration: none;
    transition: all 0.3s;
    cursor: pointer;
}

.register-form-box button[type="submit"]:hover {
    background: rgba(255, 255, 255, 0.25);
    transform: scale(1.02);
}

/* エラー表示 */
.register-form-box .error-messages {
    color: #ffcccc;
    margin-bottom: 1em;
    font-size: 0.9em;
}
