.auth-page{min-height:100vh;display:flex;flex-direction:column;background-color:var(--background-color)}.header-auth{position:relative;box-shadow:none;background:transparent;border-bottom:none}.header-auth nav{padding:var(--space-lg) 40px}.header-auth-actions{display:flex;align-items:center;gap:15px}.header-auth-actions .btn{padding:7px 18px}.auth-main{flex:1;display:flex;align-items:center;justify-content:center;padding:40px var(--space-lg)}.auth-container{display:grid;grid-template-columns:1fr 1fr;max-width:1100px;width:100%;background:var(--white-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden;min-height:700px}.auth-container.auth-container-single{grid-template-columns:1fr;max-width:550px;min-height:auto}.auth-info{position:relative;background:linear-gradient(135deg,var(--primary-color) 0%,#2d5a87 100%);padding:60px 50px;display:flex;flex-direction:column;justify-content:top;color:var(--white-color);overflow:hidden}.auth-info-bg{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none}.auth-info-content{position:relative;z-index:1}.auth-info-title{font-size:2.25rem;font-weight:700;margin-bottom:var(--space-lg);line-height:1.2}.auth-info-description{font-size:var(--font-lg);opacity:.9;line-height:1.7;margin-bottom:40px}.auth-features{display:flex;flex-direction:column;gap:25px}.auth-feature{display:flex;align-items:flex-start;gap:15px}.auth-feature-icon{width:50px;height:50px;border-radius:var(--radius-lg);background:#ffffff26;display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-feature-icon ion-icon{font-size:var(--font-xl)}.auth-feature-text h4{font-size:var(--font-md);font-weight:600;margin-bottom:4px}.auth-feature-text p{font-size:var(--font-sm);opacity:.85;margin:0;line-height:1.5}.auth-form-container{padding:50px;display:flex;flex-direction:column;justify-content:center;overflow-y:auto}.auth-form-header{text-align:center;margin-bottom:30px}.auth-form-title{font-size:1.75rem;font-weight:700;color:var(--text-color);margin-bottom:8px}.auth-form-subtitle{color:var(--secondary-color);font-size:var(--font-md);margin:0}.social-auth{display:flex;flex-direction:column;gap:12px;margin-bottom:25px}.social-btn{font-weight:500;border:1px solid var(--light-gray);background:var(--white-color);color:var(--text-color)}.social-btn:hover{background:var(--background-color);border-color:var(--secondary-color)}.social-btn ion-icon{font-size:1.3rem}.social-btn.google:hover{border-color:#ea4335;color:#ea4335}.social-btn.facebook:hover{border-color:#1877f2;color:#1877f2}.auth-divider{display:flex;align-items:center;margin-bottom:25px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--light-gray)}.auth-divider span{padding:0 var(--space-md);color:var(--secondary-color);font-size:var(--font-sm);white-space:nowrap}.auth-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label .required{color:var(--color-danger)}.form-group input.error{border-color:var(--color-danger);box-shadow:var(--shadow-focus-danger)}.input-with-icon{position:relative}.input-with-icon ion-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:var(--font-lg);color:var(--secondary-color);pointer-events:none}.input-with-icon input{width:100%;padding-left:45px!important}.password-input{position:relative}.password-input .input-icon{position:absolute;left:15px;top:50%;transform:translateY(-50%);font-size:var(--font-lg);color:var(--secondary-color);pointer-events:none}.password-input input{width:100%;padding-left:45px!important;padding-right:50px!important}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--secondary-color);padding:5px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.password-toggle:hover{color:var(--primary-color)}.password-toggle ion-icon{font-size:1.2rem}.password-strength{display:flex;align-items:center;gap:12px;margin-top:8px}.strength-bar{flex:1;height:6px;background:var(--light-gray);border-radius:var(--radius-sm);overflow:hidden}.strength-fill{height:100%;width:0;border-radius:var(--radius-sm);transition:width .3s ease,background-color .3s ease}.strength-text{font-size:var(--font-xs);font-weight:500;min-width:100px;text-align:right}.password-requirements{list-style:none;padding:0;margin:var(--space-sm) 0 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.password-requirements li{font-size:var(--font-xs);color:var(--secondary-color);display:flex;align-items:center;gap:6px}.password-requirements li ion-icon{font-size:var(--font-md);color:var(--color-danger)}.password-requirements li.met{color:var(--color-success)}.password-requirements li.met ion-icon{color:var(--color-success)}.form-options{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-lg)}.forgot-password{font-size:var(--font-sm);color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s ease}.forgot-password:hover{color:var(--secondary-color);text-decoration:underline}.checkbox-group{margin-top:5px}.checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;user-select:none}.checkbox-label input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;border:2px solid var(--light-gray);border-radius:var(--radius-sm);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-top:2px}.checkbox-label input[type=checkbox]:checked+.checkmark{background:var(--primary-color);border-color:var(--primary-color)}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"";width:6px;height:10px;border:solid var(--white-color);border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-text{font-size:var(--font-sm);color:var(--text-color);line-height:1.5}.checkbox-text a{color:var(--primary-color);text-decoration:none}.checkbox-text a:hover{text-decoration:underline}.submit-button-wrapper{position:relative;width:100%;margin-top:var(--space-sm)}.btn-submit{width:100%;padding:var(--space-sm) var(--space-lg);font-size:var(--font-md);justify-content:center;transition:all .3s ease;position:relative}.btn-submit:disabled{opacity:.6;cursor:not-allowed;background-color:var(--light-gray);color:var(--secondary-color)}.btn-submit:disabled:hover{transform:none;box-shadow:var(--shadow-sm)}.btn-submit.active{opacity:1;cursor:pointer}.submit-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-10px);margin-bottom:var(--space-sm);opacity:0;visibility:hidden;pointer-events:none;transition:all .3s ease;z-index:var(--z-dropdown);width:100%;max-width:320px}.submit-tooltip.show{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.submit-tooltip .tooltip-content{background:var(--white-color);border:1px solid var(--light-gray);border-radius:var(--radius-lg);padding:16px var(--space-lg);box-shadow:var(--shadow-md)}.submit-tooltip .tooltip-content:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid var(--white-color)}.submit-tooltip .tooltip-title{font-weight:600;font-size:var(--font-sm);color:var(--dark-color);margin:0 0 12px}.submit-tooltip .tooltip-requirements{list-style:none;padding:0;margin:0}.submit-tooltip .tooltip-requirements li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:var(--font-sm);color:var(--secondary-color);transition:all .2s ease}.submit-tooltip .tooltip-requirements li ion-icon{font-size:var(--font-lg);flex-shrink:0}.submit-tooltip .tooltip-requirements li.requirement-pending{color:var(--secondary-color)}.submit-tooltip .tooltip-requirements li.requirement-pending ion-icon{color:var(--light-gray)}.submit-tooltip .tooltip-requirements li.requirement-met{color:var(--success-color, #10b981)}.submit-tooltip .tooltip-requirements li.requirement-met ion-icon{color:var(--success-color, #10b981)}.auth-footer{text-align:center;margin-top:25px;padding-top:25px;border-top:1px solid var(--light-gray)}.auth-footer p{color:var(--secondary-color);margin:0}.auth-footer a{color:var(--primary-color);text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}.footer-auth{padding:var(--space-lg) 0;text-align:center;color:var(--secondary-color);font-size:var(--font-sm)}.footer-auth a{color:var(--secondary-color);text-decoration:none}.footer-auth a:hover{color:var(--primary-color);text-decoration:underline}.footer-auth p{margin:0}.forgot-password-link{display:flex;justify-content:flex-end}.forgot-password-link a{font-size:var(--font-sm);color:var(--primary-color);text-decoration:none}.forgot-password-link a:hover{text-decoration:underline}.remember-forgot{display:flex;align-items:center;justify-content:space-between;gap:15px}.auth-form-icon{width:80px;height:80px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-color) 0%,#2d5a87 100%);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg)}.auth-form-icon ion-icon{font-size:var(--font-3xl);color:var(--white-color)}.auth-message{padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);margin-bottom:var(--space-lg);display:flex;align-items:center;gap:12px}.auth-message ion-icon{font-size:var(--font-xl);flex-shrink:0}.auth-message.success{background:#28a7451a;color:var(--color-success);border:1px solid rgba(40,167,69,.2)}.auth-message.error{background:#dc35451a;color:var(--color-danger);border:1px solid rgba(220,53,69,.2)}@media(max-width:992px){.auth-container{grid-template-columns:1fr;max-width:500px}.auth-main{padding:var(--space-lg) var(--space-md)}.auth-info{display:none}.auth-form-container{padding:40px 30px}}@media(max-width:768px){.auth-main{padding:var(--space-lg) var(--space-md)}.auth-container{border-radius:var(--radius-lg);min-height:auto}.auth-form-container{padding:30px var(--space-lg)}.auth-form-title{font-size:var(--font-xl)}.form-row,.password-requirements{grid-template-columns:1fr}.remember-forgot{flex-direction:column;align-items:flex-start;gap:10px}.form-options{flex-direction:column;gap:10px;align-items:flex-start}.form-options .forgot-password{align-self:flex-end}.submit-tooltip{max-width:280px}.submit-tooltip .tooltip-content{padding:14px 16px}.submit-tooltip .tooltip-title{font-size:var(--font-sm)}.submit-tooltip .tooltip-requirements li{font-size:var(--font-xs);padding:5px 0}}@media(max-width:480px){.header-auth nav{padding:var(--space-md) var(--space-lg)}.header-auth-actions .btn{padding:6px 14px;font-size:var(--font-sm)}.social-auth{gap:10px}.social-btn{padding:7px var(--space-md)}.auth-divider span{font-size:var(--font-xs)}.password-strength{flex-direction:column;align-items:flex-start;gap:8px}.strength-bar{width:100%}.strength-text{text-align:left}.submit-button-wrapper{margin-top:var(--space-md)}.submit-tooltip{position:static;transform:none;margin-top:var(--space-md);margin-bottom:0;opacity:1;visibility:visible;max-width:100%}.submit-tooltip.show{transform:none}.submit-tooltip .tooltip-content{box-shadow:none;border:1px solid var(--light-gray);border-radius:var(--radius-md);padding:14px 16px}.submit-tooltip .tooltip-content:after{display:none}.submit-tooltip .tooltip-title{font-size:var(--font-sm);margin-bottom:var(--space-sm)}.submit-tooltip .tooltip-requirements li{padding:5px 0;font-size:var(--font-xs)}.submit-tooltip .tooltip-requirements li ion-icon{font-size:var(--font-md)}.btn-submit.active~.submit-tooltip{display:none}.form-group{margin-bottom:18px}.btn-submit{padding:var(--space-sm) var(--space-lg);font-size:var(--font-md);touch-action:manipulation}.checkbox-label{padding:var(--space-sm) 0;min-height:44px}.input-with-icon input,.password-input input{font-size:var(--font-md);padding:14px 40px 14px 45px}.password-toggle{width:44px;height:44px}}.verification-modal{padding:50px 40px 40px;text-align:center}.verification-header{margin-bottom:35px}.verification-icon{width:80px;height:80px;background:linear-gradient(135deg,var(--primary-color) 0%,#2d5a87 100%);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;margin:0 auto 25px;animation:pulse-icon 2s infinite ease-in-out}@keyframes pulse-icon{0%,to{box-shadow:0 0 #346b9c66}50%{box-shadow:0 0 0 15px #346b9c00}}.verification-icon ion-icon{font-size:var(--font-3xl);color:var(--white-color)}.verification-title{font-size:var(--font-xl);font-weight:700;color:var(--text-color);margin-bottom:12px}.verification-description{color:var(--text-muted);font-size:var(--font-md);line-height:1.6}.verification-description strong{color:var(--primary-color);display:block;margin-top:8px;font-weight:600}.code-inputs{display:flex;gap:10px;justify-content:center;margin-bottom:25px}.code-input{width:50px;height:60px;border:2px solid var(--color-border-dark);border-radius:var(--radius-lg);text-align:center;font-size:var(--font-xl);font-weight:700;color:#1f2937;background:var(--color-bg-white);transition:all .2s ease;caret-color:var(--color-primary-dark);padding:0;box-sizing:border-box}.code-input:focus{outline:none;border-color:var(--color-primary-dark);box-shadow:var(--shadow-focus-strong)}.code-input.filled{border-color:var(--color-primary-dark);background:#346b9c0d}.code-input.error{border-color:var(--color-danger);background:#dc35450d;animation:shake .5s ease}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}#codeError{text-align:center}.code-validity{margin-top:var(--space-sm);text-align:center}.btn-verify{width:100%;padding:var(--space-sm) var(--space-lg);font-size:var(--font-md);gap:10px}.btn-verify:disabled{opacity:.5;cursor:not-allowed}.btn-verify ion-icon{font-size:1.3rem}.verification-footer{margin-top:30px;padding-top:25px;border-top:1px solid var(--border-color)}.verification-footer p{color:var(--text-muted);font-size:var(--font-sm);margin-bottom:12px}.resend-btn{background:none;color:var(--primary-color)}.resend-btn:hover{background:#346b9c1a}.resend-btn ion-icon{font-size:var(--font-lg)}.resend-timer{color:var(--text-muted);font-size:var(--font-sm)}.resend-timer span{font-weight:600;color:var(--primary-color)}.resend-limit-info{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:var(--space-md);color:#6b7280;font-size:var(--font-sm)}.resend-limit-info ion-icon{font-size:var(--font-lg);color:var(--color-primary-dark)}.resend-limit-info strong{color:var(--color-primary-dark)}.resend-limit-reached{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin-top:var(--space-md);padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:var(--radius-md);color:#dc2626;font-size:var(--font-sm);text-align:center}.resend-limit-reached>span{display:flex;align-items:center;gap:8px}.resend-limit-reached ion-icon{font-size:1.3rem;flex-shrink:0}.reset-timer-info{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);color:#92400e;font-size:var(--font-xs)}.reset-timer-info ion-icon{font-size:var(--font-lg);color:#d97706}.reset-timer-info strong{color:#92400e;font-weight:600}.resend-btn:disabled{opacity:.5;cursor:not-allowed}.account-exists-modal{padding:50px 40px 40px;text-align:center}.warning-icon{background:linear-gradient(135deg,#f59e0b,#d97706)!important}.account-exists-actions{display:flex;flex-direction:column;gap:12px;margin-top:30px}.account-exists-actions .btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:var(--space-sm) var(--space-lg);font-size:var(--font-md)}.account-exists-actions .btn ion-icon{font-size:1.2rem}@media(max-width:480px){.verification-modal,.account-exists-modal{padding:40px 25px 30px}.verification-icon{width:70px;height:70px}.verification-icon ion-icon{font-size:var(--font-2xl)}.verification-title{font-size:1.3rem}.code-inputs{gap:8px}.code-input{width:44px;height:54px;font-size:1.3rem;border-radius:var(--radius-md)}}@media print{.auth-page{display:block}.header-auth,.footer-auth,.auth-info,.social-auth,.auth-divider,.modal-overlay{display:none}.auth-container{box-shadow:none;border:1px solid #ddd}}.lockout-container{max-width:500px;margin:0 auto}.lockout-header{text-align:center}.lockout-emoji{font-size:4rem;margin-bottom:var(--space-lg)}.lockout-subtitle{color:var(--color-danger)}.lockout-info{margin-top:var(--space-lg);padding:var(--space-lg);background:var(--color-bg-main);border-radius:var(--radius-md)}.lockout-list{list-style:none;padding:0;margin:0}.lockout-list li{margin-bottom:var(--space-sm);display:flex;align-items:start;gap:var(--space-sm)}.lockout-list li:last-child{margin-bottom:0}.lockout-list ion-icon{flex-shrink:0;margin-top:3px}.lockout-actions{margin-top:var(--space-lg);text-align:center}
