.auth-page-wrapper{background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 50%,#fef3c7 100%);min-height:100vh;position:relative;overflow:hidden}.auth-page-wrapper:before{content:"";pointer-events:none;background-image:radial-gradient(circle at 25% 25%,#f973160f 0%,#0000 50%),radial-gradient(circle at 75% 75%,#ffb4570f 0%,#0000 50%);width:100%;height:100%;position:absolute}.auth-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffffa;border:1px solid #f973161f;border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 10px 30px #00000014,0 1px 3px #0000000d,0 0 0 1px #f973160f}.auth-card:hover{transform:translateY(-2px);box-shadow:0 20px 40px #0000001f,0 2px 6px #00000014,0 0 0 1px #f973161a}.auth-card-header{text-align:center;padding:2rem 2rem 1rem;position:relative}.auth-card-title{color:var(--bs-dark);letter-spacing:-.025em;margin-bottom:.5rem;font-size:1.875rem;font-weight:700}.auth-card-subtitle{color:#6b7280;margin-bottom:0;font-size:.9375rem;font-weight:400}.auth-card-body{padding:1.5rem 2rem 2rem}.auth-form-label{color:var(--bs-dark);letter-spacing:.01em;margin-bottom:.5rem;font-size:.875rem;font-weight:600}.auth-input-group{margin-bottom:1.25rem;position:relative}.auth-input-group input{background-color:#fff;border:1.5px solid #e5e7eb;border-radius:12px;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.auth-input-group input:focus{border-color:var(--bs-primary);background-color:#fff;box-shadow:0 0 0 3px #f9731626}.auth-input-group .input-group{position:relative}.auth-input-group .input-group input{border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.auth-input-group .input-group input:focus{z-index:3;border-right:none}.auth-input-group .input-group .btn{color:#6b7280;background-color:#fff;border:1.5px solid #e5e7eb;border-left:none;border-top-right-radius:12px;border-bottom-right-radius:12px;justify-content:center;align-items:center;min-width:48px;padding:.875rem 1rem;transition:all .2s;display:flex}.auth-input-group .input-group .btn:hover{color:var(--bs-primary);background-color:#f9fafb;border-color:#e5e7eb}.auth-input-group .input-group .btn:focus{border-color:var(--bs-primary);z-index:3;background-color:#fff;box-shadow:0 0 0 3px #f9731626}.auth-input-group .input-group .btn:active{border-color:var(--bs-primary);background-color:#f3f4f6}.auth-input-group .input-group input.is-valid,.auth-input-group .input-group input.is-invalid{border-right:none}.auth-input-group .input-group input.is-valid~.btn{border-color:var(--bs-success)}.auth-input-group .input-group input.is-invalid~.btn{border-color:var(--bs-danger)}.auth-input-group .input-group input.is-valid:focus~.btn,.auth-input-group .input-group input.is-invalid:focus~.btn{border-color:inherit}.auth-input-group input.is-valid{border-color:var(--bs-success);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%232bd47d' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);padding-right:calc(1.5em + .75rem)}.auth-input-group input.is-valid:focus{border-color:var(--bs-success);box-shadow:0 0 0 3px #2bd47d26}.auth-input-group input.is-invalid{border-color:var(--bs-danger);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f87171'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23f87171' stroke='none'/%3e%3c/svg%3e");background-position:right calc(.375em + .1875rem) center;background-repeat:no-repeat;background-size:calc(.75em + .375rem) calc(.75em + .375rem);padding-right:calc(1.5em + .75rem)}.auth-input-group input.is-invalid:focus{border-color:var(--bs-danger);box-shadow:0 0 0 3px #f8717126}.auth-feedback{margin-top:.375rem;font-size:.8125rem;font-weight:500}.auth-feedback.valid-feedback{color:var(--bs-success)}.auth-feedback.invalid-feedback{color:var(--bs-danger)}.auth-btn-primary{background:linear-gradient(135deg, var(--bs-primary) 0%, #ea6c0c 100%);letter-spacing:.01em;border:none;border-radius:12px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 12px #f973164d}.auth-btn-primary:before{content:"";background:linear-gradient(135deg, #ea6c0c 0%, var(--bs-primary) 100%);opacity:0;width:100%;height:100%;transition:opacity .3s;position:absolute;top:0;left:0}.auth-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #f9731666}.auth-btn-primary:hover:not(:disabled):before{opacity:1}.auth-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #f9731659}.auth-btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.auth-btn-primary span{z-index:1;position:relative}.auth-btn-loading{justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.auth-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-alert{border:none;border-radius:10px;align-items:center;gap:.625rem;margin-bottom:1.25rem;padding:.875rem 1rem;font-size:.875rem;font-weight:500;display:flex}.auth-alert-danger{color:#dc2626;border-left:3px solid var(--bs-danger);background-color:#f871711a}.auth-alert-success{color:#16a34a;border-left:3px solid var(--bs-success);background-color:#2bd47d1a}.auth-link{color:var(--bs-primary);font-weight:600;text-decoration:none;transition:all .2s;position:relative}.auth-link:after{content:"";background-color:var(--bs-primary);transform-origin:100%;width:100%;height:1.5px;transition:transform .3s;position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.auth-link:hover{color:#ea6c0c}.auth-link:hover:after{transform-origin:0;transform:scaleX(1)}.auth-link-secondary{color:#6b7280;font-size:.875rem;font-weight:500}.auth-link-secondary:hover{color:var(--bs-primary)}.auth-footer{text-align:center;border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.25rem}.auth-footer-text{color:#6b7280;margin-bottom:0;font-size:.875rem}.auth-forgot-link{color:var(--bs-primary);font-size:.8125rem;font-weight:500;text-decoration:none;transition:color .2s}.auth-forgot-link:hover{color:#ea6c0c;text-decoration:underline}@media (max-width:575.98px){.auth-card{border-radius:16px;margin:1rem}.auth-card-header{padding:1.5rem 1.25rem .75rem}.auth-card-title{font-size:1.5rem}.auth-card-subtitle{font-size:.875rem}.auth-card-body{padding:1rem 1.25rem 1.5rem}.auth-input-group input{font-size:16px}.auth-btn-primary{padding:.8125rem 1.25rem;font-size:.9375rem}}@media (min-width:576px) and (max-width:767.98px){.auth-card{max-width:480px;margin-left:auto;margin-right:auto}}@media (min-width:768px){.auth-card{max-width:500px}.auth-page-wrapper{padding:2rem}}.auth-input-group input:focus-visible{outline:2px solid var(--bs-primary);outline-offset:2px}.auth-btn-primary:focus-visible{outline-offset:2px;outline:3px solid #f9731680}@media (prefers-color-scheme:dark){.auth-page-wrapper{background:linear-gradient(135deg,#1a1d23 0%,#1f2937 50%,#1e293b 100%)}.auth-card{background:#2a2e37f2;border-color:#f9731633}.auth-card-title{color:#f9fafb}.auth-card-subtitle{color:#9ca3af}.auth-input-group input{color:#f9fafb;background-color:#1f2937;border-color:#374151}.auth-input-group input:focus{border-color:var(--bs-primary);background-color:#1f2937}.auth-footer{border-color:#374151}}.auth-divider{text-align:center;color:#9ca3af;align-items:center;margin:1.25rem 0;font-size:.8125rem;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background-color:#e5e7eb;flex:1;height:1px}.auth-divider span{padding:0 .75rem}.btn-google{color:#374151;cursor:pointer;background-color:#fff;border:1.5px solid #e5e7eb;border-radius:12px;justify-content:center;align-items:center;gap:.625rem;width:100%;margin-bottom:0;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s;display:flex}.btn-google:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db;box-shadow:0 2px 8px #00000014}.btn-google:active:not(:disabled){background-color:#f3f4f6}.btn-google:disabled{opacity:.6;cursor:not-allowed}@media print{.auth-page-wrapper,.auth-card{display:none!important}}
