.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px;background:linear-gradient(135deg,#667eea,#764ba2)}.login-form{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.1);width:100%;max-width:400px;text-align:center}.login-form h2{margin:0 0 10px;color:#333;font-weight:600}.login-form p{margin:0 0 30px;color:#666;font-size:14px}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e1e5e9;border-radius:8px;font-size:14px;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.submit-button{width:100%;padding:12px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px rgba(102,126,234,.4)}.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:#fee;color:#c33;padding:12px;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #fcc}.divider{margin:24px 0;position:relative;text-align:center}.divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e1e5e9}.divider span{position:relative;background:#fff;padding:0 12px;color:#666;font-size:14px}.gsi-material-button{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#fff;background-image:none;border:1px solid #d2d2d2;border-radius:4px;box-sizing:border-box;color:#1f1f1f;cursor:pointer;font-family:Roboto,arial,sans-serif;border-radius:8px;font-size:16px;font-weight:600;width:100%;padding:12px 16px;letter-spacing:.25px;outline:none;overflow:hidden;position:relative;text-align:center;transition:background-color .218s,border-color .218s,box-shadow .218s;vertical-align:middle;white-space:nowrap;min-width:min-content}.gsi-material-button .gsi-material-button-icon{height:20px;margin-right:12px;min-width:20px;width:20px}.gsi-material-button .gsi-material-button-content-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.gsi-material-button .gsi-material-button-contents{flex-grow:1;font-family:Roboto,arial,sans-serif;font-weight:500;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.gsi-material-button .gsi-material-button-state{transition:opacity .218s;bottom:0;left:0;opacity:0;position:absolute;right:0;top:0}.gsi-material-button:disabled{cursor:default;background-color:hsla(0,0%,100%,.3803921569);border-color:rgba(31,31,31,.1215686275)}.gsi-material-button:disabled .gsi-material-button-contents,.gsi-material-button:disabled .gsi-material-button-icon{opacity:38%}.gsi-material-button:not(:disabled):active .gsi-material-button-state,.gsi-material-button:not(:disabled):focus .gsi-material-button-state{background-color:#303030;opacity:12%}.gsi-material-button:not(:disabled):hover{box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15)}.gsi-material-button:not(:disabled):hover .gsi-material-button-state{background-color:#303030;opacity:8%}.social-buttons{display:flex;flex-direction:column;gap:12px;width:100%}.apple-signin-button{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;-webkit-appearance:none;background-color:#000;background-image:none;border:none;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;font-weight:400;width:100%;padding:12px 16px;letter-spacing:.25px;outline:none;overflow:hidden;position:relative;text-align:center;transition:background-color .218s,opacity .218s;vertical-align:middle;white-space:nowrap;min-width:min-content}.apple-signin-button .apple-signin-button-icon{height:20px;margin-right:12px;min-width:20px;width:20px;display:flex;align-items:center;justify-content:center}.apple-signin-button .apple-signin-button-content-wrapper{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;height:100%;justify-content:space-between;position:relative;width:100%}.apple-signin-button .apple-signin-button-contents{flex-grow:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:400;overflow:hidden;text-overflow:ellipsis;vertical-align:top;color:#fff}.apple-signin-button .apple-signin-button-state{transition:opacity .218s;bottom:0;left:0;opacity:0;position:absolute;right:0;top:0;background-color:#fff}.apple-signin-button:disabled{cursor:default;background-color:rgba(0,0,0,.38);opacity:.6}.apple-signin-button:disabled .apple-signin-button-contents,.apple-signin-button:disabled .apple-signin-button-icon{opacity:.6}.apple-signin-button:not(:disabled):active .apple-signin-button-state,.apple-signin-button:not(:disabled):focus .apple-signin-button-state{background-color:#fff;opacity:15%}.apple-signin-button:not(:disabled):hover{background-color:#1a1a1a;box-shadow:0 1px 2px 0 rgba(0,0,0,.3),0 1px 3px 1px rgba(0,0,0,.15)}.apple-signin-button:not(:disabled):hover .apple-signin-button-state{background-color:#fff;opacity:10%}.form-footer{margin-top:20px;padding-top:20px;border-top:1px solid #e1e5e9}.form-footer p{margin:0;font-size:14px;color:#666}.form-footer .toggle-button{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;margin-left:5px;text-decoration:underline}.form-footer .toggle-button:hover{color:#764ba2}@media(max-width:480px){.login-container{padding:10px}.login-form{padding:30px 20px}}