.login-modal{--auth-modal-padding:24px;--auth-button-height:48px;--auth-input-height:48px;--auth-border-radius:8px}@media (max-width:640px){.login-modal .ant-modal{margin:0;max-width:100vw;width:100vw!important;height:100vh;border-radius:0}.login-modal .ant-modal-content{height:100vh;border-radius:0;display:flex;flex-direction:column}.login-modal .ant-modal-body{flex:1;padding:32px 20px 20px;overflow-y:auto;-webkit-overflow-scrolling:touch}.login-modal .ant-modal-close{top:16px;right:16px;width:32px;height:32px}.login-modal .ant-modal-close-x{width:32px;height:32px;line-height:32px;font-size:16px}.login-modal .ant-btn{min-height:44px}.login-modal .ant-btn,.login-modal .ant-input{height:44px;font-size:16px}.login-modal .ant-tabs-tab{padding:8px 16px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}}@media (min-width:641px) and (max-width:1024px){.login-modal .ant-modal{width:90vw!important;max-width:480px}}@media (min-width:1025px){.login-modal .ant-modal{width:440px!important}}.google-auth-button{position:relative;overflow:hidden;transition:all .2s ease}.google-auth-button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(45deg,transparent 30%,hsla(0,0%,100%,.1) 50%,transparent 70%);transform:translateX(-100%);transition:transform .3s ease}.google-auth-button:hover:before{transform:translateX(100%)}.otp-input{text-align:center;font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600}.otp-input,.otp-input:focus{letter-spacing:.5em}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.auth-loading .ant-spin{color:var(--ant-primary-color,#4caf50)}.auth-error{border-radius:var(--auth-border-radius);margin-bottom:16px}.auth-error .ant-alert-message{font-weight:500}.auth-success{border-radius:var(--auth-border-radius);margin-bottom:16px}.auth-form .ant-form-item{margin-bottom:20px}.auth-form .ant-form-item-label>label{font-weight:500;color:#333}.auth-form .ant-input{border-radius:var(--auth-border-radius);height:var(--auth-input-height);border:1px solid #d9d9d9;transition:all .2s ease}.auth-form .ant-input-focused,.auth-form .ant-input:focus{border-color:#4caf50;box-shadow:0 0 0 2px rgba(76,175,80,.1)}.auth-form .ant-btn-primary{height:var(--auth-button-height);border-radius:var(--auth-border-radius);font-weight:500;border:none;background:linear-gradient(135deg,#4caf50,#66bb6a);box-shadow:0 2px 8px rgba(76,175,80,.2);transition:all .2s ease}.auth-form .ant-btn-primary:hover{background:linear-gradient(135deg,#66bb6a,#4caf50);box-shadow:0 4px 12px rgba(76,175,80,.3);transform:translateY(-1px)}.auth-form .ant-btn-primary:active{transform:translateY(0);box-shadow:0 2px 8px rgba(76,175,80,.2)}.user-avatar{border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .2s ease}.user-avatar:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-1px)}.profile-dropdown .ant-dropdown-menu{border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.12);border:1px solid #f0f0f0;padding:8px;min-width:200px}.profile-dropdown .ant-dropdown-menu-item{border-radius:6px;margin:2px 0;padding:8px 12px;transition:all .2s ease}.profile-dropdown .ant-dropdown-menu-item:hover{background-color:#f5f5f5}.profile-dropdown .ant-dropdown-menu-divider{margin:8px 0}.auth-modal .ant-btn:focus-visible,.auth-modal .ant-input:focus-visible,.auth-modal [role=button]:focus-visible{outline:2px solid #4caf50;outline-offset:2px}@media (prefers-contrast:high){.auth-form .ant-input{border-width:2px}.auth-form .ant-btn-primary{border:2px solid #4caf50}.google-auth-button{border-width:2px}}@media (prefers-reduced-motion:reduce){.auth-modal *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.google-auth-button:before{display:none}}@media (prefers-color-scheme:dark){.login-modal .ant-modal-content{background-color:#1f1f1f;color:#fff}.auth-form .ant-input{background-color:#2a2a2a;border-color:#434343;color:#fff}.auth-form .ant-input:focus{border-color:#66bb6a;background-color:#2a2a2a}.google-auth-button{background-color:#2a2a2a;border-color:#434343;color:#fff}}@media print{.login-modal{display:none!important}}