.signin-container{min-height:calc(100vh - 69px);min-height:calc(100dvh - 69px);display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:#f8fafc;position:relative;overflow:hidden}.signin-card{background:#ffffff;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.3),0 0 1px rgba(0,0,0,.1);padding:3rem 2.5rem;width:100%;max-width:420px;position:relative;z-index:1;animation:slideIn .5s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.signin-header{text-align:center;margin-bottom:2rem}.signin-brand-logo{display:block;width:56px;height:56px;margin:0 auto 1rem;border-radius:14px;object-fit:contain}.signin-title{font-size:1.75rem;font-weight:600;color:#1a202c;margin:0 0 .5rem;letter-spacing:0}.signin-subtitle{font-size:.95rem;color:#64748b;margin:0;font-weight:400}.google-signin-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.25rem;border:1.5px solid #e2e8f0;border-radius:8px;background:#ffffff;color:#374151;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem}.google-signin-btn:hover:not(:disabled){background:#f9fafb;border-color:#cbd5e1;box-shadow:0 4px 12px rgba(0,0,0,.08);transform:translateY(-1px)}.google-signin-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.06)}.google-signin-btn:disabled{opacity:.6;cursor:not-allowed}.google-icon{flex-shrink:0}.divider{display:flex;align-items:center;margin:1.5rem 0;gap:1rem}.divider-line{flex:1;height:1px;background:#e2e8f0}.divider-text{color:#94a3b8;font-size:.875rem;font-weight:500;text-transform:lowercase}.error-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem;margin-bottom:1rem;animation:shake .4s ease-in-out}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.signin-form{gap:1.25rem}.form-group,.signin-form{display:flex;flex-direction:column}.form-group{gap:.5rem}.input-label-wrapper{display:flex;justify-content:space-between;align-items:center}.input-label{font-size:.875rem;font-weight:500;color:#334155}.last-used-badge{font-size:.75rem;color:#64748b;background:#f1f5f9;padding:.25rem .625rem;border-radius:12px;font-weight:500}.form-input{width:100%;padding:.875rem 1rem;border:1.5px solid #e2e8f0;border-radius:8px;font-size:.95rem;color:#1e293b;background:#f8fafc;transition:all .2s ease;outline:none;font-family:inherit}.form-input::placeholder{color:#94a3b8}.form-input:focus{background:#ffffff;border-color:#4f46e5;box-shadow:0 0 0 3px rgba(79,70,229,.1)}.form-input:disabled{opacity:.6;cursor:not-allowed}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input{padding-right:3rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;color:#64748b;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.password-toggle:hover{background:#f1f5f9;color:#334155}.password-toggle:active{background:#e2e8f0}.continue-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.95rem 1.5rem;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#ffffff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px rgba(79,70,229,.4);margin-top:.5rem}.continue-btn:hover:not(:disabled){background:linear-gradient(135deg,#4338ca,#4f46e5);box-shadow:0 6px 20px rgba(79,70,229,.5);transform:translateY(-2px)}.continue-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px rgba(79,70,229,.3)}.continue-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#ffffff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.signin-footer{margin-top:2rem;text-align:center;padding-top:1.5rem;border-top:1px solid #e2e8f0}.signup-link{font-size:.875rem;color:#64748b;margin:0}.link{color:#4f46e5;text-decoration:none;font-weight:600;transition:color .2s ease}.link:hover{color:#4338ca;text-decoration:underline}@media (max-width:480px){.signin-card{padding:2rem 1.5rem}.signin-title{font-size:1.5rem}.signin-subtitle{font-size:.875rem}.bg-decoration-1,.bg-decoration-2,.bg-decoration-3{display:none}}@media (prefers-color-scheme:dark){.signin-card{background:#1e293b;box-shadow:0 20px 60px rgba(0,0,0,.5),0 0 1px rgba(255,255,255,.1)}.signin-title{color:#f1f5f9}.signin-subtitle{color:#94a3b8}.google-signin-btn{background:#334155;border-color:#475569;color:#f1f5f9}.google-signin-btn:hover:not(:disabled){background:#475569;border-color:#64748b}.divider-line{background:#475569}.input-label{color:#e2e8f0}.form-input{background:#0f172a;border-color:#334155;color:#f1f5f9}.form-input:focus{background:#1e293b;border-color:#6366f1}.password-toggle{color:#94a3b8}.password-toggle:hover{background:#334155;color:#e2e8f0}.signin-footer{border-top-color:#334155}.last-used-badge{background:#334155;color:#cbd5e1}}