.signup-shell{min-height:100vh;padding:clamp(1rem,2vw,1.75rem);background:var(--color-background-alt)}.signup-frame{max-width:1120px;margin:0 auto;border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden;background:var(--color-background);box-shadow:var(--shadow-xl)}.signup-home-logo{height:34px;display:block}.signup-banner{position:relative;overflow:hidden;padding:clamp(1.25rem,2.5vw,2rem);background:linear-gradient(130deg,var(--color-secondary) 0%,var(--color-primary) 100%);color:var(--color-text-white)}.signup-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--color-text),var(--color-text));opacity:.18}.signup-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,var(--color-primary) 0%,transparent 45%),radial-gradient(circle at 80% 25%,var(--color-accent) 0%,transparent 50%);opacity:.08}.signup-banner-head,.signup-benefits-grid{position:relative;z-index:1}.signup-banner-head{animation:signupBannerEnter .55s ease-out}@keyframes signupBannerEnter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.signup-banner-head{margin-bottom:var(--spacing-lg)}.signup-home-link{text-decoration:none;color:inherit;display:inline-block;margin-bottom:var(--spacing-md);transition:transform var(--transition-base),opacity var(--transition-base)}.signup-home-link:hover{transform:translateY(-1px);opacity:.96}.signup-home-text{margin:0;font-size:var(--font-size-lg);letter-spacing:.5px;text-transform:uppercase}.signup-banner-title{margin:0 0 var(--spacing-xs);font-size:clamp(1.6rem,2.8vw,2.2rem);line-height:1.2}.signup-banner-subtitle{margin:0;max-width:780px;line-height:1.6;opacity:.95}.signup-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--spacing-sm)}.signup-benefit-card{margin:0;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text);transition:transform var(--transition-base),box-shadow var(--transition-base),background var(--transition-base)}.signup-benefit-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);background:var(--color-background-alt)}.signup-benefit-card p{margin:0;font-size:var(--font-size-sm);line-height:1.45}.signup-benefit-icon{width:34px;height:34px;min-width:34px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));color:var(--color-text-white);display:inline-flex;align-items:center;justify-content:center;transition:transform var(--transition-base),box-shadow var(--transition-base)}.signup-benefit-card:hover .signup-benefit-icon{transform:scale(1.06);box-shadow:var(--shadow-sm)}.signup-body{padding:clamp(1.1rem,2.2vw,2rem)}.signup-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-background);padding:clamp(1rem,2.2vw,1.8rem);animation:signupCardEnter .52s ease-out}@keyframes signupCardEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.signup-card-header{margin-bottom:var(--spacing-lg)}.signup-card-title{margin:0 0 var(--spacing-xs);color:var(--color-text);font-size:clamp(1.35rem,2vw,1.8rem)}.signup-card-subtitle{margin:0;color:var(--color-text-light)}.signup-error-box{margin-bottom:var(--spacing-md);border:1px solid rgba(220,38,38,.25);background:#dc262614;color:var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:flex-start;gap:var(--spacing-sm)}.signup-form-stack{display:grid;gap:var(--spacing-md)}.signup-input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.signup-input-group{display:grid;gap:var(--spacing-xs)}.signup-input-label{color:var(--color-text);font-weight:600;font-size:var(--font-size-sm)}.signup-input-shell{position:relative}.signup-input-icon{position:absolute;left:var(--spacing-md);top:50%;transform:translateY(-50%);color:var(--color-text-light);pointer-events:none}.signup-input-control{width:100%;padding:var(--spacing-md) calc(var(--spacing-md) * 3) var(--spacing-md) calc(var(--spacing-md) * 2.6);border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-background-alt);color:var(--color-text);font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.signup-input-control:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-secondary) 16%,transparent);background:var(--color-background)}.signup-input-control:disabled{opacity:.65;cursor:not-allowed}.signup-input-control-error{border-color:var(--color-error);background:#dc26260f}.signup-input-toggle{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-light);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color var(--transition-base),background var(--transition-base),transform var(--transition-base)}.signup-input-toggle:hover{color:var(--color-secondary);background:color-mix(in srgb,var(--color-secondary) 8%,transparent);transform:translateY(-50%) scale(1.04)}.signup-input-error{color:var(--color-error);font-size:var(--font-size-xs)}.signup-role-group{display:grid;gap:var(--spacing-xs)}.signup-role-label{color:var(--color-text);font-weight:600;font-size:var(--font-size-sm)}.signup-role-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.signup-role-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background-alt);cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;user-select:none}.signup-role-card:hover{border-color:var(--color-secondary);background:var(--color-background)}.signup-role-card-active{border-color:var(--color-secondary);background:color-mix(in srgb,var(--color-secondary) 8%,var(--color-background));box-shadow:0 0 0 3px color-mix(in srgb,var(--color-secondary) 14%,transparent)}.signup-role-card-error{border-color:var(--color-error)}.signup-role-icon{width:36px;height:36px;min-width:36px;border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));color:var(--color-text-white);display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease}.signup-role-card-active .signup-role-icon{transform:scale(1.08)}.signup-role-text{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.signup-role-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text)}.signup-role-desc{font-size:var(--font-size-xs);color:var(--color-text-light);line-height:1.3}.signup-terms-row{display:grid;gap:var(--spacing-xs)}.signup-terms-label{display:inline-flex;align-items:flex-start;gap:var(--spacing-xs);color:var(--color-text-light);font-size:var(--font-size-sm);line-height:1.45}.signup-terms-link{color:var(--color-secondary);text-decoration:none;font-weight:600}.signup-terms-link:hover{text-decoration:underline}.signup-submit-btn{width:100%;border:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-secondary),var(--color-primary));color:var(--color-cream);padding:calc(var(--spacing-sm) + 2px) var(--spacing-md);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.signup-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.signup-submit-btn:disabled{opacity:.7;cursor:not-allowed}.signup-submit-loader{animation:signupOrbitSpin .9s linear infinite}@keyframes signupOrbitSpin{to{transform:rotate(360deg)}}.signup-oauth-block{margin-top:var(--spacing-lg)}.signup-oauth-divider{text-align:center;position:relative;margin-bottom:var(--spacing-md)}.signup-oauth-divider:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px solid var(--color-border)}.signup-oauth-divider span{position:relative;z-index:1;background:var(--color-background);padding:0 var(--spacing-sm);color:var(--color-text-light);font-size:var(--font-size-xs)}.signup-oauth-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.signup-oauth-button{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-background-alt);color:var(--color-text);padding:var(--spacing-sm);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);cursor:pointer;transition:border-color .2s ease,transform .2s ease}.signup-oauth-button:hover:not(:disabled){border-color:var(--color-secondary);transform:translateY(-1px)}.signup-oauth-button:disabled{opacity:.6;cursor:not-allowed}.signup-login-text{margin:var(--spacing-md) 0 0;text-align:center;font-size:var(--font-size-sm);color:var(--color-text-light)}.signup-login-link{color:var(--color-secondary);text-decoration:none;font-weight:600}.signup-login-link:hover{text-decoration:underline}@media(max-width:860px){.signup-benefits-grid,.signup-input-row{grid-template-columns:1fr}}@media(max-width:480px){.signup-role-grid{grid-template-columns:1fr}}@media(max-width:540px){.signup-shell{padding:var(--spacing-sm)}.signup-oauth-row{grid-template-columns:1fr}}.theme-dark .signup-frame,.theme-dark .signup-card{background:var(--color-background-alt);border-color:color-mix(in srgb,var(--color-primary) 22%,transparent)}.theme-dark .signup-oauth-divider span{background:var(--color-background-alt)}.theme-dark .signup-oauth-button,.theme-dark .signup-input-control{background:var(--color-background)}
