[hidden]{display:none!important}
.registration-page{background:#271b21;color:#fff1e8;height:100dvh;overflow:hidden;display:flex;flex-direction:column}
.registration-header{background:linear-gradient(105deg,#24060e,#642036);display:flex;align-items:center;justify-content:space-between;padding:4px max(18px,calc((100vw - 1200px)/2));position:static;flex-shrink:0}
.registration-header img{display:block;width:clamp(130px,22vh,200px);height:auto;max-height:72px;object-fit:contain}
.registration-login{background:#f7ded2;color:#4f1b2d;border-radius:40px;padding:9px 24px;font-weight:600}
.registration-main{max-width:1200px;width:100%;min-height:0;flex:1;margin:0 auto;padding:clamp(8px,2vh,20px) 20px;overflow:hidden;display:flex}
.registration-form{width:100%;min-height:0;border:1px solid #ac647b;border-radius:24px;padding:clamp(10px,2vh,22px) clamp(16px,5vw,64px);background:linear-gradient(145deg,#36232c,#251c21);display:flex;flex-direction:column}
.registration-progress{color:#b99fa9;text-align:center;font-size:12px;line-height:1.3;margin-bottom:8px;flex-shrink:0}
.registration-form fieldset{border:0;margin:0;padding:0;min-width:0;min-height:0;flex:1;display:flex;flex-direction:column}
.registration-form legend{font-size:clamp(19px,3.5vh,30px);font-weight:700;text-align:center;width:100%;padding:0;line-height:1.2}
.step-hint{text-align:center;color:#c7aeb9;font-size:13px;line-height:1.35;margin:8px 0 12px;flex-shrink:0}
.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:clamp(8px,2vh,20px);margin-top:4px;flex:1;min-height:0}
.choice-grid-sex{grid-template-rows:minmax(0,1fr)}
.registration-choice{margin:0;position:relative;cursor:pointer;min-height:0;border:2px solid transparent;border-radius:18px;background:radial-gradient(ellipse at 70% 0,#80546980,transparent 65%),linear-gradient(145deg,#4d2b3b,#1d1821);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(4px,1.5vh,14px);padding:12px 20px;overflow:hidden;text-align:center}
.registration-choice:nth-child(even){background:radial-gradient(ellipse at 10% 100%,#bc866750,transparent 70%),linear-gradient(145deg,#3b2530,#201922)}
.registration-choice:has(input:checked){border-color:#e49f9d;box-shadow:0 0 18px #d87a923d}
.registration-choice:has(input:focus-visible){outline:3px solid #f4c6b3;outline-offset:2px}
.registration-choice input{position:absolute;left:12px;bottom:12px;width:18px;height:18px;margin:0;accent-color:#e49f9d}
.choice-art{font-size:clamp(30px,8vh,68px);line-height:1;color:#eebdb0;font-weight:400;font-family:Georgia,serif;flex-shrink:1}
.choice-title{font-size:clamp(13px,2vh,17px);font-weight:650;line-height:1.25;padding:0 12px}
.age-art{font-size:clamp(26px,6vh,48px)}.body-art{font-size:clamp(30px,7vh,62px)}.choice-grid-sex .choice-art{font-size:clamp(50px,12vh,110px)}
.registration-form label:not(.registration-choice){font-weight:400;font-size:14px;line-height:1.3;margin:8px 0}
.registration-form input:not([type=checkbox]):not([type=radio]),.registration-form select{background:#291e26;color:#fff1e8;border:1px solid #a48a97;border-radius:28px;padding:10px 16px;min-height:42px;margin-top:4px}
.registration-form input::placeholder{color:#b7a5af}.registration-form input:focus,.registration-form select:focus{outline:2px solid #e1a9a2;outline-offset:2px}
.registration-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.registration-password{position:relative}.registration-password input{padding-right:55px!important}.registration-password .auth-password-toggle{top:1px;right:8px;color:#edb6b3}
.registration-actions{display:flex;justify-content:space-between;gap:12px;margin-top:clamp(10px,2vh,20px);flex-shrink:0;padding-bottom:env(safe-area-inset-bottom,0px)}.registration-actions button{border-radius:40px;min-width:160px;padding:12px 24px;background:linear-gradient(110deg,#86415a,#b06877);color:#fff1e8}
.registration-actions .registration-back{background:#1c151b}.registration-next,.registration-submit{margin-left:auto}
.step-error:empty{display:none}.step-error,.registration-error{color:#ffd4bc;background:#622b3b;padding:8px;border-radius:10px;font-size:13px;line-height:1.3;margin:8px 0 0;flex-shrink:0}
@media(max-width:700px){.registration-header{padding:4px 16px}.registration-header img{width:145px;max-height:58px}.registration-login{padding:8px 18px}.registration-main{padding:10px}.registration-form{padding:14px 12px;border-radius:18px}.registration-form legend{font-size:clamp(18px,3vh,24px)}.choice-grid{gap:10px}.registration-choice{padding:8px 6px}.choice-title{font-size:13px;padding:0 12px}.registration-choice input{left:8px;bottom:8px;width:16px;height:16px}.registration-actions button{min-width:0;padding:11px 18px}.registration-numbers{gap:8px}.registration-numbers label{font-size:12px!important}.registration-numbers input{padding:8px!important}.step-hint{font-size:12px}}
@media(max-height:600px){.registration-header img{width:125px;max-height:46px}.registration-main{padding:6px 10px}.registration-form{padding:8px 14px}.registration-progress{font-size:11px;margin-bottom:4px}.registration-form legend{font-size:19px}.step-hint{font-size:11px;margin:4px 0 6px}.choice-grid{gap:8px}.choice-art{font-size:32px}.age-art{font-size:26px}.choice-title{font-size:12px}.registration-actions{margin-top:8px}.registration-actions button{padding:8px 18px}.registration-form label:not(.registration-choice){font-size:12px;margin:4px 0}.registration-form input:not([type=checkbox]):not([type=radio]),.registration-form select{min-height:32px;padding:6px 12px}.registration-numbers{gap:8px}.registration-choice{gap:4px;padding:6px}.registration-choice input{width:14px;height:14px;bottom:6px;left:6px}}

.registration-consent{display:flex;align-items:flex-start;gap:10px}
.registration-consent input{width:auto;flex:none}
.registration-consent a{text-decoration:underline}
