* { box-sizing:border-box; }
body { margin:0; padding:36px 16px; background:#f4f7f0; color:#263326; font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.identity-card { width:100%; max-width:480px; margin:20px auto; padding:32px; border:1px solid #dce7d4; border-top:5px solid #74b83a; border-radius:22px; background:#fff; box-shadow:0 16px 50px rgba(44,83,31,.09); }
.identity-brand { display:inline-flex; align-items:center; gap:11px; color:#426f2d; font-size:18px; font-weight:750; text-decoration:none; }
.identity-brand img { display:block; flex:0 0 64px; width:64px; height:53px; object-fit:contain; }
h1 { margin:25px 0; color:#2d4826; font-size:29px; letter-spacing:-.6px; line-height:1.25; }
label { display:block; margin:18px 0; color:#44553e; font-size:13px; font-weight:600; }
input:not([type=hidden]):not([type=checkbox]), select { display:block; width:100%; min-height:46px; padding:12px; margin-top:7px; border:1px solid #d4dfce; border-radius:10px; background:#fbfdf9; color:#263326; font:400 15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
button { width:100%; min-height:48px; padding:12px; border:0; border-radius:11px; background:#ffab2e; color:#fff; font:750 15px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; box-shadow:0 7px 18px rgba(225,146,31,.2); cursor:pointer; }
button:hover { background:#ff9f13; }
input:focus-visible, select:focus-visible, button:focus-visible, a:focus-visible { outline:3px solid #b0d38c; outline-offset:2px; }
input:focus, select:focus { border-color:#74b83a; background:#fff; }
nav { display:flex; flex-wrap:wrap; gap:12px 20px; margin-top:24px; padding-top:20px; border-top:1px solid #e5ecde; font-size:13px; }
a { color:#4b782d; text-underline-offset:3px; }
p { color:#64735c; font-size:14px; }
.identity-message { padding:13px 15px; border:1px solid #d8e7cb; border-radius:12px; background:#eff7e8; color:#42632d; }
.identity-message[data-tone=pending] { border-color:#eddfbf; background:#fff8eb; color:#786235; }
.identity-error { padding:13px 15px; border:1px solid #efd6ce; border-radius:12px; background:#fff1eb; color:#973d2b; }
.identity-consent { font-size:12px; font-weight:400; }
.identity-consent input { margin-right:6px; accent-color:#639e30; }
@media(max-width:480px) { body { padding:12px; } .identity-card { padding:24px; margin:8px auto; } h1 { font-size:25px; } input:not([type=hidden]):not([type=checkbox]),select { font-size:16px; } }
