 body {
     background: #f4f6fb;
     font-family: 'Segoe UI', system-ui, sans-serif;
     min-height: 100vh;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .auth-card {
     background: #fff;
     border-radius: 12px;
     border: 1px solid #e8ecf4;
     padding: 2.25rem;
     width: 100%;
     max-width: 400px;
     box-shadow: 0 2px 12px rgba(0, 0, 0, .06);
 }

 .auth-icon {
     width: 44px;
     height: 44px;
     background: #4f80f5;
     border-radius: 10px;
     display: flex;
     align-items: center;
     justify-content: center;
     margin-bottom: 1.25rem;
 }

 .auth-icon i {
     color: #fff;
     font-size: 1.1rem;
 }

 .auth-card h1 {
     font-size: 1.25rem;
     font-weight: 700;
     color: #1a1f2e;
     margin-bottom: .25rem;
 }

 .auth-card .subtitle {
     font-size: .8125rem;
     color: #6b7489;
     margin-bottom: 1.75rem;
 }

 .form-label {
     font-size: .8rem;
     font-weight: 600;
     color: #3d4455;
     margin-bottom: .35rem;
 }

 .form-control {
     font-size: .875rem;
     border-color: #e8ecf4;
     border-radius: 8px;
     padding: .6rem .875rem;
 }

 .form-control:focus {
     border-color: #4f80f5;
     box-shadow: 0 0 0 3px rgba(79, 128, 245, .12);
 }

 .form-control.is-invalid {
     border-color: #ef4444;
 }

 .invalid-feedback {
     font-size: .75rem;
 }

 .input-group-text {
     background: #f4f6fb;
     border-color: #e8ecf4;
     border-radius: 0 8px 8px 0 !important;
     cursor: pointer;
     color: #6b7489;
 }

 .input-group .form-control {
     border-radius: 8px 0 0 8px !important;
 }

 .btn-primary {
     background: #4f80f5;
     border-color: #4f80f5;
     border-radius: 8px;
     font-size: .9rem;
     font-weight: 600;
     padding: .65rem;
 }

 .btn-primary:hover {
     background: #3d6ee0;
     border-color: #3d6ee0;
 }

 .auth-footer {
     text-align: center;
     font-size: .8rem;
     color: #6b7489;
     margin-top: 1.25rem;
 }

 .auth-footer a {
     color: #4f80f5;
     text-decoration: none;
 }

 .auth-footer a:hover {
     text-decoration: underline;
 }