/* ## SOURCEMAP
## DESCRIPTION: シンプル認証スタイル
*/
body{font-family:'Noto Sans JP',sans-serif;background:var(--bg);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;}
.box{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:36px 32px;}
.logo{font-size:11px;font-weight:700;color:var(--brand);letter-spacing:1px;text-transform:uppercase;margin-bottom:20px;}
h2{font-size:20px;font-weight:700;margin-bottom:8px;}
p{font-size:13px;color:var(--text-muted);margin-bottom:24px;line-height:1.7;}
.form-group{margin-bottom:16px;}
label{display:block;font-size:12px;font-weight:600;margin-bottom:5px;}
input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:7px;font-size:14px;font-family:inherit;}
input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(107,30,46,.1);}
.btn{width:100%;padding:12px;background:var(--brand);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:700;font-family:inherit;cursor:pointer;margin-bottom:12px;}
.btn:hover{opacity:.88;}
.btn-link{display:block;text-align:center;font-size:13px;color:var(--text-muted);text-decoration:none;}
.btn-link:hover{color:var(--brand);}
.hint{font-size:11px;color:var(--text-muted);margin-top:4px;}
.alert-err{background:#fdeaea;border:1px solid #f5c6c6;border-radius:8px;padding:14px;margin-bottom:20px;font-size:13px;color:var(--danger);}
.success-box{background:var(--brand-light);border:1px solid #e8c8cd;border-radius:8px;padding:20px;text-align:center;}
.success-icon{font-size:36px;margin-bottom:12px;}
.success-title{font-size:16px;font-weight:700;color:var(--brand);margin-bottom:8px;}
.success-desc{font-size:13px;color:var(--text-muted);line-height:1.7;}
