*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-primary,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif);background-color:var(--background,#f8fafc);color:var(--foreground,#1e293b);line-height:1.6;min-height:100vh}.signup-header{display:flex;justify-content:center;align-items:center;padding:1rem 0}.signup-brand{justify-content:center;align-items:center!important;text-align:center!important;color:var(--purple-primary,#8b5cf6);font-size:clamp(1.5rem,4vw,2rem);font-weight:700;font-family:var(--font-primary)}.signup-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem}.signup-card{background:linear-gradient(135deg,#f5f3ff,#d0d0d8 50%,#8870c2);border-radius:1.25rem;box-shadow:0 12px 24px rgba(139,92,246,.2);width:100%;max-width:520px;padding:clamp(2rem,5vw,3rem);transition:transform .3s ease-in-out}.signup-card:hover{transform:translateY(-2px)}.signup-form-wrapper{text-align:center}.signup-title{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;color:var(--purple-dark,#4c1d95);margin-bottom:.75rem}.signup-subtitle{font-size:clamp(.875rem,2.5vw,1rem);color:var(--purple-tertiary,#6b7280);margin-bottom:clamp(2rem,4vw,2.5rem)}.signup-alert{padding:clamp(.6rem,2vw,.75rem) clamp(.8rem,2.5vw,1rem);border-radius:.5rem;margin-bottom:clamp(1.25rem,3vw,1.5rem);font-size:clamp(.8rem,2vw,.9rem);font-weight:500}.signup-alert-success{background-color:#f0fdf4;border:1px solid #86efac;color:#166534}.signup-alert-error{background-color:#fef2f2;border:1px solid #fecaca;color:#dc2626}.signup-form{width:100%}.signup-form-group{margin-bottom:clamp(1.25rem,3vw,1.5rem);text-align:left}.signup-form-label{display:block;font-size:clamp(.8rem,2vw,.9rem);font-weight:600;color:var(--purple-dark,#4c1d95);margin-bottom:.6rem}.signup-input-group{position:relative;display:flex;align-items:center}.signup-input-icon{position:absolute;left:1rem;color:var(--purple-secondary,#9ca3af);height:clamp(1rem,2.5vw,1.25rem);width:clamp(1rem,2.5vw,1.25rem);z-index:10}.signup-input{width:100%;padding:clamp(.7rem,2vw,.85rem) 1rem clamp(.7rem,2vw,.85rem) clamp(2.5rem,6vw,3rem);border:1px solid rgba(139,92,246,.3);border-radius:.75rem;font-size:clamp(.875rem,2.5vw,1rem);color:var(--purple-dark,#4c1d95);background-color:#fff;transition:border-color .2s ease,box-shadow .2s ease}.signup-input:focus{border-color:var(--purple-accent,#a855f7);outline:none;box-shadow:0 0 0 .2rem rgba(139,92,246,.2)}.signup-password-toggle{position:absolute;right:1rem;background:transparent;border:none;cursor:pointer;color:var(--purple-secondary,#9ca3af);padding:0;height:clamp(1rem,2.5vw,1.25rem);width:clamp(1rem,2.5vw,1.25rem);z-index:10;transition:color .2s ease}.signup-password-toggle:hover{color:var(--purple-dark,#4c1d95)}.signup-terms-section{margin-bottom:clamp(1.5rem,3vw,2rem);text-align:left}.signup-terms-wrapper{display:flex;align-items:flex-start;gap:clamp(.5rem,2vw,.75rem)}.signup-checkbox{min-width:clamp(1rem,2.5vw,1.1rem);min-height:clamp(1rem,2.5vw,1.1rem);margin-top:.1rem;border:1px solid rgba(156,163,175,.2);border-radius:.3rem;cursor:pointer;position:relative;transition:background-color .2s ease,border-color .2s ease;flex-shrink:0}.signup-checkbox:checked{background-color:var(--purple-primary,#8b5cf6);border-color:var(--purple-primary,#8b5cf6)}.signup-checkbox-label{font-size:clamp(.8rem,2vw,.9rem);color:var(--purple-dark,#4c1d95);cursor:pointer;line-height:1.4;flex:1}.signup-submit-btn{width:100%;padding:clamp(.7rem,2vw,.85rem);border:none;border-radius:.75rem;font-size:clamp(1rem,2.5vw,1.1rem);font-weight:700;color:#fff;background:linear-gradient(135deg,#8b5cf6,#a855f7);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;margin-top:10px}.signup-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px rgba(139,92,246,.3)}.signup-submit-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 3px 6px rgba(139,92,246,.2)}.signup-submit-btn:disabled{opacity:.7;cursor:not-allowed}.signup-footer{margin-top:clamp(2rem,4vw,2.5rem);font-size:clamp(.8rem,2vw,.9rem);color:var(--purple-tertiary,#6b7280);text-align:center}.signup-link{font-weight:600}.signup-link,.signup-terms-link{color:var(--purple-primary,#8b5cf6);text-decoration:none;transition:color .2s ease,text-decoration .2s ease}.signup-terms-link{font-weight:500}.signup-link:hover,.signup-terms-link:hover{color:var(--purple-accent,#a855f7);text-decoration:underline}@media (max-width:320px){.signup-container{padding:1.5rem .75rem}.signup-card{padding:1.5rem;border-radius:1rem;box-shadow:0 8px 16px rgba(139,92,246,.15);max-width:100%}.signup-terms-wrapper{flex-direction:column;gap:.5rem;align-items:flex-start}.signup-checkbox{margin-top:0}.signup-form-group{margin-bottom:1rem}}@media (min-width:321px) and (max-width:576px){.signup-container{padding:1.75rem 1rem}.signup-card{padding:2rem;border-radius:1rem;max-width:480px}.signup-terms-wrapper{gap:.6rem}.signup-form-group{margin-bottom:1.25rem}}@media (min-width:577px) and (max-width:768px){.signup-container{padding:2rem 1.25rem}.signup-card{max-width:480px;padding:2.5rem}.signup-terms-wrapper{align-items:flex-start}}@media (min-width:769px) and (max-width:1024px){.signup-container{padding:2.5rem 1.5rem}.signup-card{max-width:500px;padding:2.75rem}}@media (min-width:1025px){.signup-container{padding:3rem 2rem}.signup-card{max-width:520px;padding:3rem}}@media (max-height:700px){.signup-container{align-items:flex-start;padding:2rem 1rem 1.5rem}.signup-card{margin-top:0}.signup-form-group{margin-bottom:1rem}.signup-subtitle{margin-bottom:1.5rem}.signup-terms-section{margin-bottom:1.25rem}}@media (max-height:600px){.signup-container{padding:1.5rem 1rem 1rem}.signup-card{padding:clamp(1.5rem,4vw,2rem)}.signup-form-group{margin-bottom:.75rem}.signup-subtitle{margin-bottom:1rem}.signup-footer{margin-top:1.5rem}.signup-terms-section{margin-bottom:1rem}}@media (max-height:500px){.signup-container{padding:1rem .75rem .75rem}.signup-card{padding:1.5rem}.signup-form-group{margin-bottom:.5rem}.signup-subtitle{margin-bottom:.75rem}.signup-footer{margin-top:1rem}.signup-terms-section{margin-bottom:.75rem}.signup-alert{margin-bottom:1rem}}@media (min-width:1440px){.signup-card{max-width:540px;padding:3.5rem}}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.signup-card{box-shadow:0 12px 24px rgba(139,92,246,.15)}.signup-submit-btn:hover:not(:disabled){box-shadow:0 8px 16px rgba(139,92,246,.25)}}@media (max-height:500px) and (orientation:landscape){.signup-container{padding:1rem .5rem .5rem;align-items:flex-start}.signup-card{padding:1.25rem;margin-top:0}.signup-form-group,.signup-subtitle,.signup-terms-section,.signup-title{margin-bottom:.5rem}.signup-footer{margin-top:.75rem}}@media (max-width:280px){.signup-container{padding:2rem .5rem 1rem;align-items:flex-start}.signup-card{padding:1.25rem;border-radius:.75rem;margin-top:0}.signup-input{padding-left:2.25rem}.signup-input-icon{left:.75rem}.signup-password-toggle{right:.75rem}}