*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;padding:28px;background:#f1f6f2;color:#111;font:15px/1.5 Arial,Helvetica,sans-serif}
main{width:min(420px,100%);padding:30px 32px;background:#fff;border:1px solid #e2e9e4;border-radius:15px;box-shadow:0 12px 32px #203b2b0e}
.eyebrow{margin:0 0 13px;color:#273b32;font-size:11px;font-weight:700;letter-spacing:.13em}
h1{margin:0 0 10px;color:#111;font-size:28px;line-height:1.2;font-weight:600}
.muted,small{color:#697b70}
form{display:grid;gap:14px;margin-top:20px}
label{display:grid;gap:7px;color:#536b60;font-size:14px;font-weight:600}
input{width:100%;height:38px;padding:8px 11px;border:1px solid #d7e0e5;border-radius:8px;background:#eaf2ff;color:#152330;font:13px Arial,Helvetica,sans-serif;outline:none}
input:focus{border-color:#ef7a23;box-shadow:0 0 0 3px #ef7a231f}
button{border:0;border-radius:8px;background:#ef741b;color:white;padding:11px 14px;font:700 13px Arial,Helvetica,sans-serif;cursor:pointer;box-shadow:0 4px 9px #d66a2728}
button:hover{background:#df6410}
.auth-page{min-height:100vh}
.auth-card{width:min(420px,100%);padding:30px 32px 31px}
.login-card{padding-top:25px}
.auth-brand-mark{height:205px;display:grid;place-items:center;margin:0 0 9px}
.auth-brand-mark img{display:block;width:184px;height:184px;object-fit:contain;mix-blend-mode:multiply}
.login-card .eyebrow{margin-bottom:14px}
.login-card h1{margin-bottom:12px}
.intro{margin:0;color:#454c48;font-size:15px;line-height:1.55}
.auth-form{gap:12px;margin-top:19px}
.auth-form label{gap:7px}
.auth-form input{height:38px}
.auth-submit{height:38px;margin-top:2px;padding:0 15px;font-size:13px}
.auth-submit span{padding-left:4px;font-size:17px;vertical-align:-1px}
.auth-message{min-height:0;margin:0;color:#aa3229;font-size:13px;font-weight:400}
.recovery-details{margin-top:10px;color:#536b60;font-size:13px}
.recovery-details summary{width:max-content;cursor:pointer;list-style:none;color:#536b60;font-weight:600}
.recovery-details summary::-webkit-details-marker{display:none}
.recovery-details summary::after{content:"＋";margin-left:7px;color:#ef741b}
.recovery-details[open] summary::after{content:"−"}
.recovery-form{padding-top:8px}
.recovery-copy{margin:0;color:#697b70;font-size:13px}
.recovery-button{background:#eef5f0;color:#286142;box-shadow:none}
.recovery-button:hover{background:#e1eee5}
@media(max-width:480px){body{padding:18px}.auth-card{padding:23px 22px 25px}.auth-brand-mark{height:174px}.auth-brand-mark img{width:158px;height:158px}}
