.demo-modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .3s ease-out}.demo-modal{background:#111;border:1px solid #333333;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideInUp .3s ease-out;box-shadow:0 20px 60px #0000004d}.demo-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#e5e5e5;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;z-index:10}.demo-modal-close:hover{background:#1a1a1a;color:#fff;transform:scale(1.1)}.demo-modal-content{padding:40px}.demo-modal-title{font-size:2rem;font-weight:700;margin-bottom:12px;color:#fff;text-align:center}.demo-modal-subtitle{text-align:center;color:#e5e5e5;margin-bottom:32px;line-height:1.6}.demo-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}@media(max-width:768px){.demo-form .form-row{grid-template-columns:1fr;gap:16px}}.demo-form .form-group{margin-bottom:20px}.demo-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#fff;font-size:.9rem}.demo-form .form-group input,.demo-form .form-group select,.demo-form .form-group textarea{width:100%;padding:12px 16px;border:1px solid #333333;border-radius:8px;background:#000;color:#fff;font-size:1rem;transition:all .2s ease}.demo-form .form-group input:focus,.demo-form .form-group select:focus,.demo-form .form-group textarea:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.demo-form .form-group input::placeholder,.demo-form .form-group select::placeholder,.demo-form .form-group textarea::placeholder{color:#a3a3a3}.demo-form .form-group textarea{resize:vertical;min-height:100px}.demo-form .form-group select{cursor:pointer}.demo-form .submit-btn{width:100%;padding:16px 24px;font-size:1.1rem;font-weight:600;margin-top:24px;display:flex;align-items:center;justify-content:center;gap:8px}.demo-form .submit-btn:disabled{opacity:.7;cursor:not-allowed}.demo-form .submit-btn .icon{width:20px;height:20px}.demo-form .form-message{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:8px;margin-bottom:20px}.demo-form .form-message.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#22c55e}.demo-form .form-message.success .icon{color:#22c55e;flex-shrink:0;margin-top:2px}.demo-form .form-message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444}.demo-form .form-message.error .icon{color:#ef4444;flex-shrink:0;margin-top:2px}.demo-form .form-message h4{margin:0 0 4px;font-weight:600}.demo-form .form-message p{margin:0;font-size:.9rem;line-height:1.4}.demo-form .spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.demo-modal-overlay{padding:10px}.demo-modal-content{padding:24px}.demo-modal-title{font-size:1.5rem}}.login-modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:loginModalFadeIn .3s ease-out}.login-modal{background:#111;border:1px solid #333333;border-radius:16px;max-width:440px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:loginModalSlideIn .3s ease-out;box-shadow:0 20px 60px #0000004d}.login-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#e5e5e5;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;z-index:10}.login-modal-close:hover{background:#1a1a1a;color:#fff;transform:scale(1.1)}.login-modal-content{padding:40px}.login-modal-title{font-size:2rem;font-weight:700;margin-bottom:12px;color:#fff;text-align:center}.login-modal-subtitle{text-align:center;color:#e5e5e5;margin-bottom:24px;line-height:1.6}.login-modal-subtitle--info{margin-top:-12px;margin-bottom:20px;font-size:.875rem}.login-form .form-group{margin-bottom:20px}.login-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#fff;font-size:.9rem}.login-form .form-group input{width:100%;padding:12px 16px;border:1px solid #333333;border-radius:8px;background:#000;color:#fff;font-size:1rem;transition:all .2s ease}.login-form .form-group input:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.login-form .form-group input::placeholder{color:#a3a3a3}.login-form .form-group input:disabled{opacity:.7;cursor:not-allowed}.login-form .login-form-error{color:#ef4444;font-size:.9rem;margin-bottom:16px;padding:12px;background:#ef44441a;border-radius:8px;border:1px solid rgba(239,68,68,.2)}.login-form .login-submit-btn{width:100%;padding:14px 24px;font-size:1rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px}.login-form .login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.login-form .login-submit-btn .spinner{width:20px;height:20px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:loginModalSpin 1s linear infinite}.login-modal-toggle{text-align:center;margin-top:16px;font-size:.9rem;color:#e5e5e5}.login-modal-toggle-btn{background:none;border:none;color:#00d4ff;cursor:pointer;font-size:inherit;text-decoration:underline;padding:0}.login-modal-toggle-btn:hover{color:#8b5cf6}.login-modal-divider{display:flex;align-items:center;margin:24px 0;color:#e5e5e5;font-size:.9rem}.login-modal-divider:before,.login-modal-divider:after{content:"";flex:1;height:1px;background:#333}.login-modal-divider span{padding:0 16px}.login-google-btn{width:100%;padding:14px 24px;font-size:1rem;display:flex;align-items:center;justify-content:center;gap:10px}.login-google-btn .google-icon{flex-shrink:0}.text-gradient{background:linear-gradient(135deg,#00d4ff,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@keyframes loginModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes loginModalSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes loginModalSpin{to{transform:rotate(360deg)}}@media(max-width:768px){.login-modal-content{padding:24px}.login-modal-title{font-size:1.5rem}}.login-issues{margin:0 0 1.1rem;padding:.75rem .9rem;border:1px solid #333333;border-radius:10px;background:#1a1a1a}.login-issues p{margin:0;color:#e5e5e5;font-size:.82rem;line-height:1.4}.login-issues p+p{margin-top:.35rem}.login-field-flag{margin-left:.45rem;font-style:normal;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#f87171}.login-field-missing input{border-color:#f871718c}.login-field-mismatch input{border-color:#fbbf2499}.login-field-mismatch .login-field-flag{color:#fbbf24}
