.registration-kicker { text-align: center; color: #a17c42; font-size: 8px; letter-spacing: 1.7px; margin: 0 0 12px; }
.app-container .registration-title { font-family: var(--display-font); font-weight: 400; font-size: 37px; text-align: center; line-height: 1.08; color: #71342e; margin: 0; letter-spacing: -1.4px; }
.registration-title em { color: var(--red); }
.registration-steps { display: flex; align-items: center; justify-content: center; list-style: none; gap: 24px; margin: 26px 0; padding: 0 0 22px; border-bottom: 1px solid #e5d6bb; }
.registration-steps li { display: flex; align-items: center; gap: 7px; color: #ab997e; font-size: 10px; }
.registration-steps li > span { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid #d4c09a; border-radius: 50%; font-size: 10px; }
.registration-steps li[aria-current] { color: var(--red); }
.registration-steps li[aria-current] > span { background: var(--red); border-color: var(--red); color: #fff2dc; }
.registration-intro { margin: 0 0 22px; color: #92795b; font-size: 12px; line-height: 1.9; text-align: center; }
.registration-form { display: flex; flex-direction: column; gap: 17px; }
.registration-form.hidden { display: none; }
.registration-form label { display: flex; flex-direction: column; gap: 7px; color: #72533e; font-size: 11px; font-weight: 500; }
.registration-form input { width: 100%; min-width: 0; padding: 12px 13px; border: 1px solid #ddc7a2; border-radius: 9px; background: #fffdf8; font-size: 14px; font-weight: 400; color: var(--ink); }
.registration-form input:disabled { opacity: .65; }
.registration-form input::placeholder { color: #b19d83; opacity: 1; font-size: 12px; }
.registration-form .button { width: 100%; }
.registration-form .button:disabled { opacity: .5; box-shadow: none; transform: none; }
.registration-captcha { position: relative; max-width: 100%; margin-top: 4px; border: 1px solid #decaab; border-radius: 12px; background: #f6ecdb; transition: border-color .2s, background .2s; }
.human-instructions { display: flex; align-items: center; gap: 12px; margin: 0; padding: 15px 16px; border-bottom: 1px solid #decaab; border-radius: 11px 11px 0 0; background: #f1dfbd; color: #714329; }
.human-instructions > span:first-child { flex: 0 0 auto; color: var(--red); font-size: 28px; line-height: 1; }
.human-instructions > span:last-child { display: flex; flex-direction: column; gap: 5px; }
.human-instructions strong { font-size: 14px; font-weight: 600; line-height: 1.6; }
.human-instructions > span > span { font-size: 12px; line-height: 1.7; }
.registration-captcha.is-verified .human-instructions, .registration-captcha.has-challenge .human-instructions, .registration-captcha[aria-busy='true'] .human-instructions { display: none; }
.registration-form .human-check-row { display: flex; flex-direction: row; align-items: center; gap: 14px; padding: 18px 16px; cursor: pointer; }
.registration-form .human-check-row input[type='checkbox'] { flex: 0 0 28px; width: 28px; height: 28px; margin: 0; padding: 0; accent-color: var(--red); cursor: pointer; }
.registration-terms-link { margin: -10px 16px 13px 58px; font-size: 11px; line-height: 1.6; }
.registration-terms-link a { color: var(--red); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.human-check-copy { display: flex; flex: 1; min-width: 0; flex-direction: column; gap: 5px; }
.human-check-copy > strong { max-width: 34ch; color: #67452e; font-size: 14px; font-weight: 600; line-height: 1.6; }
#registration-human-status { color: #775c38; font-size: 12px; font-weight: 400; line-height: 1.7; }
.human-brand { display: flex; align-items: center; flex-direction: column; gap: 2px; color: #b98e49; font-size: 25px; }
.human-brand > small { font-size: 7px; font-weight: 700; letter-spacing: 1.5px; }
.registration-captcha.is-verified { background: #f0f3e7; border-color: #a6b38c; }
.registration-captcha.is-verified .human-check-row input { accent-color: #587645; }
.registration-captcha.is-verified #registration-human-status { color: #587645; }
.registration-captcha[aria-busy='true'] .human-brand { opacity: .5; }
.registration-trap { position: absolute; left: -10000px; top: 0; width: 1px; height: 1px; overflow: hidden; }
#registration-human-challenge { padding: 16px; border-top: 1px solid #decaab; }
#registration-human-title { font-size: 13px; color: #7e432e; line-height: 1.8; margin: 0 0 13px; font-weight: 500; }
.human-image-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.human-image-option { min-width: 0; padding: 4px; background: #fff8e8; border: 1px solid #dfc8a0; border-radius: 9px; overflow: hidden; transition: border-color .2s, transform .2s; }
.human-image-option > img { display: block; width: 100%; height: auto; }
.human-image-option:hover { border-color: #a76a34; transform: translateY(-2px); }
.human-image-option:disabled { opacity: .55; }
.human-challenge-image { width: 100%; height: auto; display: block; margin-bottom: 14px; border: 1px solid #dfc8a0; border-radius: 9px; }
.registration-form .human-answer-label { margin-bottom: 12px; }
#registration-human-answer { text-align: center; text-transform: uppercase; letter-spacing: 3px; font-family: ui-monospace, monospace; }
.registration-form .human-confirm { min-height: 44px; padding: 12px 20px; }
#registration-human-feedback { font-size: 11px; color: #a34f37; line-height: 1.8; margin: 12px 0 0; }
#registration-human-feedback:empty { display: none; }
#registration-human-another, #registration-human-retry { border: 0; background: none; color: #936c36; text-decoration: underline; text-underline-offset: 4px; padding: 12px 0 0; font-size: 10px; }
#registration-human-retry { margin: 0 16px 15px; }
#registration-human-another:disabled { opacity: .4; }
.registration-feedback { margin: -4px 0 0; font-size: 11px; line-height: 1.8; color: #a44b34; overflow-wrap: anywhere; }
.registration-feedback:empty { display: none; }
.registration-continue-help { margin: -6px 0 0; color: #775c38; font-size: 12px; line-height: 1.8; text-align: center; }
.registration-continue-help.is-ready { color: #4f6c3b; }
.registration-notice { margin: 0; padding: 14px 16px; border: 1px solid #dac6a0; border-radius: 10px; background: #f5ead6; font-size: 12px; color: #866b47; line-height: 1.8; }
.registration-identity-summary { display: flex; align-items: center; justify-content: space-between; gap: 17px; padding-bottom: 17px; border-bottom: 1px solid #e5d6bb; }
.registration-identity-summary > div { display: flex; flex-direction: column; gap: 6px; color: #8e775b; font-size: 11px; overflow-wrap: anywhere; min-width: 0; }
.registration-identity-summary > button { color: var(--red); font-size: 11px; text-decoration: underline; text-underline-offset: 4px; background: none; border: 0; padding: 10px 0 10px 10px; }
.registration-zip-row { display: flex; align-items: end; gap: 16px; }
.registration-zip-row > label { flex: 1; min-width: 0; }
.registration-zip-row > button { flex: 0 0 auto; padding: 13px 0; font-size: 10px; color: var(--red); text-decoration: underline; text-underline-offset: 4px; background: none; border: 0; }
.registration-address-row { display: grid; grid-template-columns: minmax(0, 1fr) 70px; gap: 15px; }
.registration-password-label { font-family: var(--display-font); color: #7f4434; font-size: 23px; font-weight: 400; letter-spacing: -.7px; margin: 6px 0 -2px; padding-top: 19px; border-top: 1px solid #e5d6bb; }
@media (max-width: 360px) {
    .app-container .registration-title { font-size: 32px; }
    .registration-steps { gap: 17px; }
    .registration-steps li { font-size: 9px; }
    .registration-zip-row { gap: 11px; }
    .registration-zip-row > button { font-size: 9px; }
}
