fix(auth): 다크 폼 입력·비밀번호 토글 스타일 보정

- .auth-form-input 전역 클래스(글자색·캐럿·placeholder·autofill)
- 토글 버튼 scoped CSS로 고정, signup 패널 보더·배경·color-scheme
- v0.0.62 문서 반영

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-11 13:50:12 +09:00
parent 3f7f51ff86
commit 5141a63294
10 changed files with 82 additions and 25 deletions

View File

@@ -10,7 +10,6 @@ const props = defineProps({
},
/**
* 스크린 리더용 필드 이름(예: 비밀번호 확인)
* @type {string}
*/
fieldName: {
type: String,
@@ -44,33 +43,27 @@ const toggle = () => {
<template>
<button
class="auth-password-visibility-toggle flex h-10 shrink-0 items-center justify-center px-2.5 text-[#9ba3af] outline-none transition-opacity hover:opacity-80 focus-visible:ring-2 focus-visible:ring-[#2f6feb]/50"
class="auth-password-visibility-toggle"
type="button"
:aria-label="modelValue ? labelFor('hide') : labelFor('show')"
:aria-pressed="modelValue"
@click="toggle"
>
<!-- 비밀번호 숨김 상태: 보기( 열림) -->
<svg
v-if="!modelValue"
class="auth-password-visibility-toggle__icon h-5 w-5"
class="auth-password-visibility-toggle__icon"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
width="24"
height="24"
fill="currentColor"
aria-hidden="true"
>
<path d="M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z" />
</svg>
<!-- 비밀번호 표시 상태: 숨기기( 가림) -->
<svg
v-else
class="auth-password-visibility-toggle__icon h-5 w-5"
class="auth-password-visibility-toggle__icon"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 24 24"
width="24"
height="24"
fill="currentColor"
aria-hidden="true"
>
@@ -78,3 +71,36 @@ const toggle = () => {
</svg>
</button>
</template>
<style scoped>
.auth-password-visibility-toggle {
display: flex;
height: 2.5rem;
flex-shrink: 0;
align-items: center;
justify-content: center;
padding-left: 0.625rem;
padding-right: 0.625rem;
margin: 0;
border: none;
background: transparent;
color: #9ba3af;
cursor: pointer;
outline: none;
}
.auth-password-visibility-toggle:hover {
opacity: 0.85;
}
.auth-password-visibility-toggle:focus-visible {
outline: 2px solid rgba(47, 111, 235, 0.55);
outline-offset: 2px;
}
.auth-password-visibility-toggle__icon {
display: block;
width: 1.25rem;
height: 1.25rem;
}
</style>