/* ========================================================================
   虹彩診断システム — 認証画面の共通スタイル
   （login.php / password.php で使用）
   ===================================================================== */

* { box-sizing: border-box; }

body {
    margin: 0;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem;
    background: #0f1720;
    color: #e8eef4;
    font-family: system-ui, "Noto Sans JP", sans-serif;
    line-height: 1.7;
}

.auth-card {
    width: 100%;
    max-width: 26rem;
    padding: 2.25rem 2rem;
    background: #16212c;
    border: 1px solid #24323f;
    border-radius: 10px;
}

.auth-title {
    margin: 0 0 .35rem;
    font-size: 1.05rem;
    font-weight: 500;
    letter-spacing: .06em;
}

.auth-sub {
    margin: 0 0 1.75rem;
    font-size: .78rem;
    color: #7f97ab;
}

.auth-field { margin-bottom: 1.1rem; }

.auth-field label {
    display: block;
    margin-bottom: .35rem;
    font-size: .8rem;
    color: #9fb3c4;
}

.auth-field input {
    width: 100%;
    padding: .65rem .75rem;
    background: #0f1720;
    border: 1px solid #2c3d4c;
    border-radius: 6px;
    color: #e8eef4;
    font-size: .95rem;
    font-family: inherit;
}

.auth-field input:focus {
    outline: none;
    border-color: #3f7f92;
}

.auth-button {
    width: 100%;
    margin-top: .5rem;
    padding: .7rem;
    background: #2f7d92;
    border: none;
    border-radius: 6px;
    color: #fff;
    font-size: .95rem;
    font-family: inherit;
    cursor: pointer;
}

.auth-button:hover { background: #3790a8; }

.auth-button:disabled {
    background: #33454f;
    color: #7f97ab;
    cursor: not-allowed;
}

.auth-message {
    margin: 0 0 1.25rem;
    padding: .7rem .85rem;
    border-radius: 6px;
    font-size: .82rem;
}

.auth-message.is-error {
    background: #3a1f24;
    border: 1px solid #6b3038;
    color: #f0c2c8;
}

.auth-message.is-success {
    background: #1c3329;
    border: 1px solid #2f5f47;
    color: #b6e3c9;
}

.auth-note {
    margin: 1.5rem 0 0;
    font-size: .74rem;
    color: #6c8296;
}

.auth-links {
    margin-top: 1.5rem;
    padding-top: 1.25rem;
    border-top: 1px solid #24323f;
    font-size: .8rem;
}

.auth-links a { color: #6fb3c6; }
