@charset "utf-8";

/* ============================================================================
   placehazy 로그인 화면 — 책 속지 같은 절제된 단일 카드 (brand-guide §5)
   - login.skin.php 에서만 로드된다 → register/password 등 다른 member 스킨 불변.
   - :root 팔레트 토큰(--ph-*)·리디바탕 @font-face 는 placehazy.css 전역 정의를 재사용.
   - 그림자 금지, 알약 금지(radius 4~8px), 종이 층차로 구분.
   ============================================================================ */

/* login.skin.php 에서만 로드되므로 body 규칙도 로그인 페이지에만 적용된다 */
body { background-color: var(--ph-paper); }

.mb_login {
    font-family: 'Ridibatang', 'Noto Serif KR', serif;
    color: rgb(var(--ph-ink-rgb));
    max-width: 360px;
    background-color: var(--ph-paper);   /* 카드 표면=순백, 구분은 잉크 헤어라인 보더로만 (재작업 1회차) */
    border: 1px solid rgba(var(--ph-ink-rgb), 0.14);
    border-radius: 8px;
    padding: 40px 32px;
}

/* 로고 자리 — 로고 워드마크: 이미지 로드 실패 시 대문자 PLACEHAZY 워드마크 폴백(phase 16 확정) */
.mb_login .logo { max-width: 132px; }
.mb_login .ph-wordmark {
    font-family: 'Ridibatang', 'Noto Serif KR', serif;
    font-size: 1.7rem;
    letter-spacing: 0.02em;
    line-height: 1;
    color: rgb(var(--ph-ink-rgb));
    text-transform: uppercase;
}

/* 입력 — 종이 배경, 얇은 잉크 테두리, 그림자 없음 (붙은 모서리 유지) */
.mb_login .form-control {
    background-color: var(--ph-paper);
    border: 1px solid rgba(var(--ph-ink-rgb), 0.24);
    border-radius: 4px;
    color: rgb(var(--ph-ink-rgb));
    box-shadow: none;
    padding: 11px 12px;
    font-family: inherit;
}
.mb_login .form-control::placeholder { color: rgba(var(--ph-ink-rgb), 0.4); }
.mb_login .form-control:focus {
    background-color: var(--ph-paper);
    border-color: rgba(var(--ph-ink-rgb), 0.5);
    box-shadow: none;
}
.mb_login input[type="user"] { border-bottom-right-radius: 0; border-bottom-left-radius: 0; }
.mb_login input[type="password"] { border-top-left-radius: 0; border-top-right-radius: 0; }

.mb_login .form-check-input { border-color: rgba(var(--ph-ink-rgb), 0.4); box-shadow: none; }
.mb_login .form-check-input:checked {
    background-color: rgb(var(--ph-ink-rgb));
    border-color: rgb(var(--ph-ink-rgb));
}
.mb_login .form-check-input:focus { box-shadow: none; border-color: rgba(var(--ph-ink-rgb), 0.6); }
.mb_login .form-check-label { color: rgba(var(--ph-ink-rgb), 0.8); }

/* 로그인 버튼 — 잉크 채움(주요 액션 다크 악센트) */
.mb_login .btn-primary {
    background-color: rgb(var(--ph-ink-rgb));
    border-color: rgb(var(--ph-ink-rgb));
    color: var(--ph-paper-hi);
    border-radius: 5px;
    box-shadow: none;
    padding: 11px;
    letter-spacing: 0.04em;
}
.mb_login .btn-primary:hover,
.mb_login .btn-primary:focus {
    background-color: rgba(var(--ph-ink-rgb), 0.86);
    border-color: rgba(var(--ph-ink-rgb), 0.86);
    color: var(--ph-paper-hi);
    box-shadow: none;
}

.mb_login a { color: rgba(var(--ph-ink-rgb), 0.7); }
.mb_login a:hover { color: rgb(var(--ph-ink-rgb)); }
