:root{font-family:Inter,Open Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body.auth-layout{min-height:100vh;margin:0;background-color:var(--iwebengine-auth-background);color:var(--iwebengine-auth-body-text);font-family:inherit;line-height:1.6}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(2rem,5vw,4rem) 1.5rem}.auth-container{width:100%;max-width:520px;display:flex;flex-direction:column;gap:1.75rem;align-items:center}.auth-logo{width:100%;display:flex;justify-content:center}.auth-card{width:100%;background-color:var(--iwebengine-auth-card-background);color:var(--iwebengine-auth-card-text);border-radius:1.25rem;padding:clamp(2rem,4vw,3rem);box-shadow:0 30px 80px #0f172a40}.auth-card>*+*{margin-top:1.5rem}.auth-helper-text,.auth-feedback,.auth-form-group,.auth-form-actions,.auth-form-terms,.auth-form{width:100%}.auth-helper-text{font-size:.95rem;color:var(--iwebengine-auth-muted-text);max-width:500px;margin:0 auto}.auth-helper-text a{color:var(--iwebengine-auth-link-color);text-decoration:underline;font-weight:600}.auth-helper-text p{margin:0}.auth-helper-text a:hover{color:var(--iwebengine-auth-link-hover-color)}.auth-feedback{border-radius:1rem;padding:.9rem 1.15rem;font-size:.95rem;border:1px solid transparent}.auth-feedback--success{background:rgba(34,197,94,.08);border-color:#22c55e59;color:#15803d}.auth-feedback--error{background:rgba(239,68,68,.08);border-color:#ef444459;color:#b91c1c}.auth-feedback ul{margin:.75rem 0 0;padding-left:1.25rem}.auth-feedback li+li{margin-top:.35rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-form-group{display:flex;flex-direction:column;gap:.4rem}.auth-form-label{font-size:.95rem;font-weight:600;color:var(--iwebengine-auth-card-text)}.auth-form-input{width:100%;padding:.85rem 1rem;border-radius:.75rem;border:1px solid var(--iwebengine-auth-input-border);background-color:var(--iwebengine-auth-input-background);color:var(--iwebengine-auth-input-text);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.auth-form-input:focus{outline:none;border-color:var(--iwebengine-auth-link-color);box-shadow:0 0 0 3px var(--iwebengine-auth-focus-ring-color)}.auth-form-input::-moz-placeholder{color:#64748bbf}.auth-form-input::placeholder{color:#64748bbf}.auth-form-terms,.auth-form-checkbox-row{display:flex;align-items:flex-start;gap:.75rem}.auth-form-checkbox-row{align-items:center}.auth-form-checkbox{width:1.1rem;height:1.1rem;border-radius:.35rem;border:1px solid var(--iwebengine-auth-input-border);background:var(--iwebengine-auth-input-background);accent-color:var(--iwebengine-auth-button-background)}.auth-form-checkbox-text{font-size:.9rem;color:var(--iwebengine-auth-muted-text)}.auth-form-checkbox-text a{color:var(--iwebengine-auth-link-color);text-decoration:underline;font-weight:600}.auth-form-checkbox-text a:hover{color:var(--iwebengine-auth-link-hover-color)}.auth-form-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.auth-form-link{font-size:.95rem;color:var(--iwebengine-auth-link-color);text-decoration:none;font-weight:600}.auth-form-link:hover{color:var(--iwebengine-auth-link-hover-color);text-decoration:underline}.auth-button{border:none;border-radius:999px;padding:.85rem 1.75rem;font-weight:700;font-size:.95rem;letter-spacing:.02em;text-transform:uppercase;color:var(--iwebengine-auth-button-text);background:var(--iwebengine-auth-button-background);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}.auth-button:hover{background:var(--iwebengine-auth-button-hover-background);color:var(--iwebengine-auth-button-hover-text);transform:translateY(-1px);box-shadow:0 15px 30px #00000026}.auth-button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--iwebengine-auth-focus-ring-color)}.auth-muted-link{color:var(--iwebengine-auth-muted-text);font-weight:500}.auth-muted-link:hover{color:var(--iwebengine-auth-link-hover-color)}@media (max-width: 640px){.auth-card{border-radius:1rem;padding:1.75rem}.auth-form-actions{flex-direction:column;align-items:stretch}.auth-form-actions .auth-button{width:100%}}
