body:has(#loginForm),body:has(#registrationForm),body.recovery-page{display: flex;flex-direction: column;min-height: 100vh;}body:has(#loginForm) main,body:has(#registrationForm) main,body.recovery-page main{flex: 1;display: flex;align-items: center;justify-content: center;padding: calc(var(--zd-header-h) + 40px) 20px 40px;min-height: 0;box-sizing: border-box;}.wrapper{max-width: 560px;background: white;border-radius: 20px;margin: 0 auto;width: 100%;}.right{padding: 32px 40px;display: flex;flex-direction: column;justify-content: center;border: 1px solid #01A572;border-radius: 20px;background: white;}.right h1{font-size: 28px;font-weight: 700;margin-top: 0;margin-bottom: 16px;text-align: center;color: #1f1f1f;}.form{width: 100%;}.field{position: relative;margin-bottom: 8px;padding-bottom: 16px;}.label-wrapper{display: flex;justify-content: space-between;align-items: center;margin-bottom: 4px;flex-wrap: wrap;gap: 4px;}.label{font-size: 14px;font-weight: 500;color: #475569;display: flex;align-items: center;flex-wrap: wrap;}.required{color: #ef4444;margin-left: 3px;}.char-counter{font-size: 14px;font-weight: 500;color: #64748b;transition: color var(--zd-dur-fast) var(--zd-ease);white-space: nowrap;}.char-counter.warning{color: #f59e0b;}.char-counter.error{color: #ef4444;}.char-counter.success{color: #01A572;}.input-wrapper{position: relative;display: flex;align-items: center;border: 1.5px solid transparent;border-radius: 12px;padding: 10px 14px;background: #F3F4F6;transition: border-color 0.2s,background 0.2s,box-shadow 0.2s;min-height: 46px;cursor: text;touch-action: manipulation;}.input-wrapper .country-selector{cursor: pointer;}.input-wrapper input,.input-wrapper select,.input-wrapper textarea{-webkit-user-select: text !important;user-select: text !important;cursor: text;}.input-wrapper:hover{background: #ECEEF1;}.input-wrapper:focus-within{background: #fff;border-color: #10b981;box-shadow: 0 0 0 3px rgba(16,185,129,0.1);}.input-wrapper input:focus-visible,.input-wrapper select:focus-visible,.input-wrapper textarea:focus-visible{outline: none;border: none;box-shadow: none;}.input-wrapper.valid{border-color: #10b981;}.input-wrapper.invalid{border-color: #ef4444;background: #fef2f2;}.input-wrapper.warning{border-color: #f59e0b;}.validation-dot{display: none;}.input-wrapper.valid .validation-dot{background: #10b981;}.input-wrapper.invalid .validation-dot{background: #ef4444;}.input-wrapper.warning .validation-dot{background: #f59e0b;}.phone-input-container{display: flex;gap: 8px;align-items: stretch;align-self: stretch;width: 100%;}.whatsapp{color: #01A572;padding-left: 3px;font-weight: 600;white-space: nowrap;}.country-selector{flex-shrink: 0;min-width: 104px;align-self: stretch;height: auto;margin: -10px 0 -10px -14px;border: none;border-right: 1px solid #DCE0E6;background: transparent;font-size: 15px;font-weight: 600;padding: 0 26px 0 14px;border-radius: 10px 0 0 10px;cursor: pointer;outline: none;appearance: none;-webkit-appearance: none;-moz-appearance: none;background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%23475569' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14L2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") no-repeat right 10px center;}.country-selector:hover{background-color: #E7EAEE;}.country-selector:focus{background-color: #f1f5f9;}.phone-input{border: none;outline: none;font-size: 16px;flex-grow: 1;min-width: 150px;padding: 0 8px 0 12px;background: transparent;color: #1e293b;width: 100%;}.phone-input::placeholder{color: #64748b;}.password-input-container{display: flex;align-items: stretch;align-self: stretch;width: 100%;}.password-input{border: none;outline: none;font-size: 16px;flex-grow: 1;background: transparent;color: #1e293b;width: 100%;}.show-password{background: transparent;border: none;color: #52607A;font-size: 14px;font-weight: 600;cursor: pointer;padding: 4px 12px;border-radius: 8px;transition: color 0.15s ease,background 0.15s ease;white-space: nowrap;flex-shrink: 0;user-select: none;-webkit-tap-highlight-color: transparent;width: auto;min-width: 92px;align-self: stretch;margin: -10px -14px -10px 0;padding: 0 16px;border-radius: 8px 10px 10px 8px;display: inline-flex;align-items: center;justify-content: center;text-align: center;outline: none;}.show-password:hover,.show-password:focus-visible{color: #01A572;background: rgba(1,165,114,0.08);}.show-password:active{background: rgba(1,165,114,0.16);}.show-password.is-shown{color: #01A572;}.input-style{border: none;outline: none;font-size: 16px;flex-grow: 1;background: transparent;width: 100%;color: #1e293b;}.error-message{font-size: 14px;line-height: 14px;color: #ef4444;padding-left: 4px;margin-bottom: 8px;animation: slideDown 0.2s ease-out;}.field > .error-message{position: absolute;left: 4px;bottom: 0;margin-bottom: 0;}@keyframes slideDown{from{opacity: 0;transform: translateY(-3px);}to{opacity: 1;transform: translateY(0);}}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border: 0;}.checkbox-group{display: flex;align-items: center;min-height: 44px;margin: 8px 0;padding: 8px 12px;border-radius: 12px;background: #f8fafc;border: 1px solid #c2c8ce;transition: border-color 0.2s;}.checkbox-group.invalid{border-color: #ef4444;}.checkbox-label{display: flex;align-items: flex-start;gap: 12px;width: 100%;cursor: pointer;font-size: 15px;color: #475569;line-height: 1.45;}.checkbox-label input[type="checkbox"]{width: 22px;height: 22px;margin-top: 1px;border-radius: 7px;border: 2px solid #C7CDD4;background: #fff;cursor: pointer;transition: background-color var(--zd-dur-fast) var(--zd-ease),border-color var(--zd-dur-fast) var(--zd-ease);flex-shrink: 0;appearance: none;-webkit-appearance: none;position: relative;}.checkbox-label input[type="checkbox"]:checked{background-color: #01A572;border-color: #01A572;}.checkbox-label input[type="checkbox"]:checked::after{content: '';position: absolute;top: 2px;left: 6px;width: 5px;height: 10px;border: solid #fff;border-width: 0 2.5px 2.5px 0;transform: rotate(45deg);}.checkbox-label input[type="checkbox"]:hover{border-color: #01A572;}.checkbox-label input[type="checkbox"]:focus-visible{outline: 2px solid #01A572;outline-offset: 2px;}.checkbox-label a{color: #01A572;text-decoration: none;font-weight: 500;}.checkbox-label a:hover{text-decoration: underline;}.submit-btn{width: 100%;padding: 12px;background: #10b981;color: white;border: none;border-radius: 12px;font-size: 16px;cursor: pointer;transition: background-color 0.2s,transform 0.2s,box-shadow 0.2s;margin-top: 4px;font-weight: 600;position: relative;overflow: hidden;}.submit-btn:hover{background: #0da271;transform: translateY(-1px);box-shadow: 0 4px 12px rgba(16,185,129,0.2);}.submit-btn:active{transform: translateY(0);}.submit-btn:disabled{opacity: 0.6;cursor: not-allowed;transform: none !important;}.remember-forgot{display: flex;justify-content: space-between;align-items: center;margin: 16px 0 20px 0;padding: 0 4px;}.remember-me{display: flex;align-items: center;gap: 8px;}.remember-checkbox{width: 22px;height: 22px;border-radius: 7px;border: 2px solid #C7CDD4;background: #fff;cursor: pointer;transition: background-color var(--zd-dur-fast) var(--zd-ease),border-color var(--zd-dur-fast) var(--zd-ease);appearance: none;-webkit-appearance: none;position: relative;margin: 0;flex-shrink: 0;}.remember-checkbox:checked{background-color: #01A572;border-color: #01A572;}.remember-checkbox:checked::after{content: '';position: absolute;top: 2px;left: 6px;width: 5px;height: 10px;border: solid #fff;border-width: 0 2.5px 2.5px 0;transform: rotate(45deg);}.remember-checkbox:hover{border-color: #01A572;}.remember-checkbox:focus-visible{outline: 2px solid #01A572;outline-offset: 2px;}.remember-label{font-size: 15px;color: #475569;cursor: pointer;font-weight: 500;}.forgot-password{font-size: 14px;}.forgot-password a{color: #01A572;text-decoration: none;font-weight: 500;transition: color var(--zd-dur-fast) var(--zd-ease),background var(--zd-dur-fast) var(--zd-ease);padding: 4px 8px;border-radius: 6px;}.forgot-password a:hover{text-decoration: underline;}.divider{display: flex;align-items: center;margin: 16px 0;color: #64748b;font-size: 14px;white-space: nowrap;}.divider::before,.divider::after{content: "";flex: 1;height: 1px;background: #e2e8f0;}.divider::before{margin-right: 12px;}.divider::after{margin-left: 12px;}.login-link{text-align: center;font-size: 16px;color: #64748b;}.login-link a{color: #01A572;text-decoration: none;font-weight: 700;font-size: 16px;}.login-link a:hover{text-decoration: underline;}footer{background: white;width: 100%;}@media (max-width: 1024px){footer{padding-bottom: calc(90px + var(--zd-nav-lift));}}.footer{text-align: center;padding: 24px 20px;font-size: 14px;color: #64748b;max-width: 1200px;margin: 0 auto;width: 100%;border-radius: 0;border: 0;background: transparent;}.contact-link{color: #01A572;text-decoration: none;padding: 0;}.contact-link:hover{text-decoration: underline;}.footer-bottom{max-width: 800px;margin: 0 auto;line-height: 1.6;}.password-strength{height: 4px;background: #e2e8f0;border-radius: 2px;margin-top: 8px;overflow: hidden;position: relative;}.strength-bar{height: 100%;width: 0%;background: #10b981;border-radius: 2px;transition: width var(--zd-dur) var(--zd-ease),background var(--zd-dur) var(--zd-ease);}@keyframes shake{0%,100%{transform: translateX(0);}10%,30%,50%,70%,90%{transform: translateX(-3px);}20%,40%,60%,80%{transform: translateX(3px);}}@media (max-width: 1199px){.form input[type="text"],.form input[type="email"],.form input[type="tel"],.form input[type="number"],.form input[type="password"],.form input[type="url"],.form textarea,.form select{font-size: 16px;-webkit-appearance: none;-moz-appearance: none;appearance: none;-webkit-tap-highlight-color: transparent;touch-action: manipulation;-webkit-user-select: text;-moz-user-select: text;-ms-user-select: text;user-select: text;-webkit-text-size-adjust: 100%;}.form select{-webkit-user-select: none;user-select: none;cursor: pointer;}}@media (max-width: 1023px){.right{border-radius: 20px;padding: 32px 32px;}}@media (max-width: 767px){body{font-size: 16px;}.right{padding: 24px 20px;}.right h1{font-size: 22px;margin-bottom: 20px;margin-top: 0;}.country-selector{min-width: 96px;}.checkbox-group{padding: 12px;}.submit-btn{padding: 12px;font-size: 16px;}.remember-forgot{flex-direction: row;align-items: center;justify-content: space-between;gap: 12px;margin: 14px 0 18px 0;}.forgot-password{text-align: right;}.footer{padding: 16px 16px;font-size: 14px;}.footer-bottom{font-size: 14px;}}@media (max-width: 575px){.wrapper{margin-bottom: 20px;border-radius: 16px;max-width: 100%;}body:has(#loginForm) main,body.recovery-page main{padding: calc(var(--zd-header-h) + 40px) 12px 40px;}body:has(#loginForm) footer,body:has(#registrationForm) footer,body.recovery-page footer{padding-bottom: calc(70px + var(--zd-nav-lift));}body:has(#registrationForm) main{padding: calc(var(--zd-header-h) + 40px) 12px 76px;}.wrapper:has(#registrationForm){margin-top: 0;}.right{padding: 24px 20px 28px;border: 1px solid #E8EAED;border-radius: 18px;background: #fff;box-shadow: 0 2px 10px rgba(16,24,40,0.05);width: 100%;max-width: 100%;box-sizing: border-box;}.right h1{font-size: 22px;font-weight: 700;margin-top: 4px;margin-bottom: 24px;text-align: left;letter-spacing: -0.3px;}.field{margin-bottom: 14px;}.label-wrapper{margin-bottom: 6px;}.label{font-size: 14px;font-weight: 600;color: #475569;letter-spacing: 0.1px;}.input-wrapper{min-height: 52px;border-radius: 16px;border-color: transparent;background: #F3F4F6;padding: 12px 16px;}.input-wrapper:focus-within{background: #fff;border-color: #01A572;box-shadow: 0 0 0 4px rgba(1,165,114,0.12);}.input-wrapper input,.input-wrapper select,.input-wrapper textarea{font-size: 16px;}.validation-dot{display: none;}.char-counter{font-size: 14px;}.checkbox-label{font-size: 15px;line-height: 1.35;}.divider{margin: 20px 0;font-size: 14px;}.login-link{font-size: 14px;}.footer{padding: 12px 16px;font-size: 14px;}.submit-btn{width: 100%;font-size: 16px;font-weight: 700;padding: 16px;border-radius: 16px;margin-top: 4px;letter-spacing: 0.2px;box-shadow: 0 4px 14px rgba(1,165,114,0.18);}.submit-btn:active{transform: scale(0.98);}.remember-label,.forgot-password{font-size: 14px;}.phone-input,.password-input,.input-style{font-size: 14px;}.show-password{font-size: 14px;min-width: 64px;min-height: 44px;padding: 0 12px;display: inline-flex;align-items: center;justify-content: center;}.forgot-password a,.login-link a{display: inline-flex;align-items: center;min-height: 44px;padding: 0 2px;}.remember-me{display: flex;align-items: center;min-height: 44px;}.remember-label{display: inline-flex;align-items: center;min-height: 44px;padding-left: 8px;}}@media (max-width: 360px){.forgot-password a{font-size: 14px;}.right h1{font-size: 22px;}.right{padding: 20px 16px 24px;margin: 0 auto;}.country-selector{font-size: 14px;padding: 0 22px 0 12px;min-width: 90px;}.submit-btn{font-size: 14px;padding: 12px;}.footer{padding: 12px 16px;font-size: 14px;}}@media (max-height: 740px) and (orientation: portrait){.wrapper{margin-bottom: 0;}.right{padding: 18px 16px 20px;}.right h1{font-size: 20px;margin-top: 0;margin-bottom: 14px;}.field{margin-bottom: 4px;padding-bottom: 10px;}.remember-label,.forgot-password a{font-size: 14px;}.remember-forgot{margin: 4px 0 12px;}.divider{margin: 12px 0;}.login-link{margin-top: 8px;}.footer{padding: 12px 16px;}body:has(#loginForm) main,body:has(#registrationForm) main,body.recovery-page main{padding-top: calc(var(--zd-header-h) + 24px);padding-bottom: calc(65px + var(--zd-nav-lift));}}@media (max-height: 500px) and (orientation: landscape){.right{padding: 16px 20px;}.right h1{margin-bottom: 16px;margin-top: 0;font-size: 22px;}.input-wrapper{min-height: 42px;}.submit-btn{padding: 12px;font-size: 16px;}.footer{padding: 8px 16px;}}.recover-overlay{position: fixed;inset: 0;background: rgba(15,23,42,0.55);display: none;align-items: center;justify-content: center;z-index: 9999;padding: 20px;animation: recoverFadeIn 0.2s ease;}.recover-overlay.is-open{display: flex;}@keyframes recoverFadeIn{from{opacity: 0;}to{opacity: 1;}}.recover-modal{background: #fff;border-radius: 16px;width: 100%;max-width: 520px;padding: 32px 32px;box-shadow: 0 20px 60px rgba(0,0,0,0.25);position: relative;animation: recoverSlideIn 0.25s cubic-bezier(0.16,1,0.3,1);}@keyframes recoverSlideIn{from{opacity: 0;transform: translateY(16px) scale(0.98);}to{opacity: 1;transform: translateY(0) scale(1);}}.recover-close{position: absolute;top: 12px;right: 14px;width: 32px;height: 32px;border: none;background: transparent;font-size: 22px;line-height: 1;color: #64748b;cursor: pointer;border-radius: 8px;transition: background-color 0.15s,color 0.15s;}.recover-close:hover{background: #f1f5f9;color: #0f172a;}.recover-modal h2{font-size: 22px;font-weight: 700;color: #1f1f1f;text-transform: uppercase;letter-spacing: 0.5px;margin: 0 0 16px 0;padding-right: 32px;}.recover-notice{background: #01A572;color: #fff;padding: 16px 16px;border-radius: 8px;font-size: 14px;font-weight: 600;line-height: 1.5;margin-bottom: 20px;}.recover-notice.success{background: #0d8f60;}.recover-field{margin-bottom: 16px;}.recover-field .label{font-size: 14px;font-weight: 500;color: #475569;margin-bottom: 8px;display: block;}.recover-submit{background: #01A572;color: #fff;border: none;padding: 12px 32px;border-radius: 8px;font-size: 16px;font-weight: 600;text-transform: uppercase;letter-spacing: 0.3px;cursor: pointer;transition: background-color 0.2s,transform 0.15s;}.recover-submit:hover{background: #0d8f60;transform: translateY(-1px);}.recover-submit:disabled{opacity: 0.6;cursor: not-allowed;transform: none;}.recover-view{display: none;}.recover-view.is-active{display: block;}@media (max-width: 540px){.recover-modal{padding: 24px 20px;border-radius: 12px;}.recover-modal h2{font-size: 18px;}.recover-notice{font-size: 14px;padding: 12px 14px;}}@media (min-width: 900px){#registrationForm .field-row{display: grid;grid-template-columns: 1fr 1fr;gap: 16px;}#registrationForm .field-row > .field{margin-bottom: 8px;display: flex;flex-direction: column;}#registrationForm .field-row > .field > .input-wrapper{margin-top: auto;}}.label-optional{margin-left: 8px;color: #6b7280;font-size: 14px;font-weight: 500;}.zd-auth-switch{display: flex;background: #F2F2F2;border-radius: 14px;padding: 3px;margin: 0 0 18px;}.zd-auth-switch a{flex: 1;min-height: 44px;display: grid;place-items: center;border-radius: 11px;font-size: 15px;font-weight: 700;color: #4B5563;text-decoration: none;}.zd-auth-switch a.is-active{background: #fff;color: #01704F;box-shadow: 0 1px 4px rgba(17,24,39,.15);}.zd-auth-switch a:focus-visible{outline: 3px solid #01A572;outline-offset: -3px;}.zd-auth-h1{position: absolute;width: 1px;height: 1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;}#codeForm #codeInput{height: 60px;padding: 0 12px;font-size: 28px;font-weight: 600;letter-spacing: .35em;text-indent: .35em;text-align: center;font-variant-numeric: tabular-nums;}#codeForm #codeInput::placeholder{color: #9aa5a0;letter-spacing: .35em;}#codeForm .submit-btn{min-height: 52px;font-size: 16px;}.login-link.code-resend{font-size: 14px;line-height: 1.4;}.login-link.code-resend a{display: inline-block;padding: 12px 0;white-space: nowrap;}