.auth-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;background:linear-gradient(rgba(44,41,48,.72),rgba(44,41,48,.86)),url(/assets/background-9f7d3659.webp);background-size:cover;background-position:center;background-repeat:no-repeat}.auth-layout{width:min(1040px,100%);display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,460px);gap:24px;align-items:stretch}.auth-brand-panel{border-radius:24px;padding:40px clamp(24px,4vw,38px);background:linear-gradient(140deg,rgba(40,42,51,.92),rgba(34,36,44,.84));border:1px solid rgba(44,41,48,.64);box-shadow:0 20px 38px #0000006b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:center}.auth-brand-kicker{margin:0 0 10px;color:#a1acbb;font-size:.78rem;letter-spacing:.24em;font-weight:600}.auth-brand-title{margin:0 0 16px;color:#f2f2f2;font-family:Playfair Display;font-size:clamp(2rem,2.6vw,2.7rem);font-weight:600;line-height:1.15}.auth-brand-copy{margin:0 0 20px;color:#a1acbb;font-size:1rem;line-height:1.6}.auth-brand-points p{margin:0 0 10px;color:#a1acbb;font-size:.95rem;line-height:1.45}.auth-brand-points p:last-child{margin-bottom:0}.auth-card{background:rgba(40,42,51,.88);border:1px solid rgba(44,41,48,.64);border-radius:24px;box-shadow:0 20px 38px #0000006b;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:34px clamp(20px,4vw,36px)}.auth-card-signup{padding-top:28px}.auth-header{text-align:center;margin-bottom:24px}.auth-title{margin:0 0 16px;color:#f2f2f2;font-family:Playfair Display;font-size:clamp(2.1rem,3vw,2.65rem);font-weight:700;letter-spacing:-.4px;line-height:1.1}.auth-mode-switch{max-width:270px;margin:0 auto 14px;padding:4px;display:grid;grid-template-columns:1fr 1fr;gap:6px;background:rgba(34,36,44,.82);border:1px solid rgba(44,41,48,.62);border-radius:999px}.auth-mode-button{border:none;border-radius:999px;background:transparent;color:#a1acbb;min-height:38px;font-family:Roboto Mono,monospace;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .2s ease,color .2s ease}.auth-mode-button:hover{color:#f2f2f2}.auth-mode-button.active{background:#6a7f9e;color:#f2f2f2}.auth-inline-back{border:none;background:none;color:#a1acbb;font-family:Roboto Mono,monospace;font-size:.84rem;text-decoration:underline;cursor:pointer;margin-bottom:12px}.auth-inline-back:hover{color:#f2f2f2}.auth-subtitle{margin:0;color:#f2f2f2;font-size:1.34rem;font-family:Playfair Display;line-height:1.2}.auth-description{margin:6px 0 0;color:#a1acbb;font-size:.95rem;line-height:1.45}.auth-form{margin-bottom:14px}.auth-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group{margin-bottom:14px}.form-group label{display:block;color:#f2f2f2;font-weight:500;margin-bottom:7px;font-size:.9rem}.form-group input:not([type=checkbox]){width:100%;min-height:46px;box-sizing:border-box;padding:11px 15px;background:rgba(32,34,42,.84);border:1px solid rgba(106,127,158,.44);border-radius:14px;color:#f2f2f2;font-family:Roboto Mono,monospace;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-group input:not([type=checkbox]):focus{outline:none;border-color:#a1acbb;box-shadow:0 0 0 3px #6a7f9e38;background:rgba(36,38,46,.95)}.form-group input:not([type=checkbox])::placeholder{color:#8f9cab}.auth-field-label-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;gap:12px}.auth-field-label-row label{margin-bottom:0}.suggest-password-button{border:none;background:none;color:#a1acbb;font-family:Roboto Mono,monospace;font-size:.8rem;text-decoration:underline;cursor:pointer;padding:0}.suggest-password-button:hover{color:#f2f2f2}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:46px}.password-toggle-button{position:absolute;right:12px;border:none;background:none;color:#a1acbb;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px}.password-toggle-button:hover{color:#f2f2f2}.password-strength{margin-top:9px}.password-strength-track{width:100%;height:7px;border-radius:999px;background:rgba(161,172,187,.2);overflow:hidden}.password-strength-fill{display:block;height:100%;border-radius:999px;transition:width .25s ease}.password-strength-fill.weak{background:#f06464}.password-strength-fill.medium{background:#f0b15f}.password-strength-fill.strong{background:#49c58f}.password-strength-text{margin:6px 0 0;font-size:.8rem;font-weight:600;font-family:Roboto Mono,monospace}.password-strength-text.weak{color:#f6aaaa}.password-strength-text.medium{color:#f2cb8f}.password-strength-text.strong{color:#89ddb6}.password-strength-hint{margin:4px 0 0;color:#a1acbb;font-size:.78rem;line-height:1.4}.checkbox-group{margin-bottom:0}.checkbox-label{display:flex!important;align-items:center;gap:12px;color:#f2f2f2;font-size:.86rem;line-height:1.35;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-label-long{display:grid!important;grid-template-columns:18px minmax(0,1fr);align-items:start;column-gap:12px;line-height:1.5}.checkbox-label-long .checkbox-input{margin-top:3px}.checkbox-label-long span{display:block;margin-top:-1px}.checkbox-input{width:18px;min-width:18px;max-width:18px;height:18px;min-height:18px;margin-top:1px;flex:0 0 18px;cursor:pointer;padding:0;accent-color:#6a7f9e}.checkbox-policy-copy{margin:8px 0 0 30px;color:#c1c8d1;font-size:.82rem;line-height:1.5}.checkbox-policy-copy .link-button{color:#f2f2f2}.checkbox-policy-copy .link-button:hover{color:#fff}.link-button{border:none;background:none;color:#a1acbb;cursor:pointer;text-decoration:underline;padding:0;font-size:inherit;font-family:inherit}.link-button:hover{color:#f2f2f2}.error-message,.success-message{margin-bottom:14px;border-radius:12px;padding:11px 12px;font-size:.88rem;line-height:1.45}.error-message{background:rgba(185,62,74,.22);border:1px solid rgba(243,120,135,.55);color:#ffd4d9}.error-message p{margin:0}.success-message{background:rgba(61,138,103,.22);border:1px solid rgba(91,201,148,.55);color:#ccffe8}.suggested-username-row{margin-top:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.84rem}.suggested-username-button{border:none;background:none;color:#fff0f2;text-decoration:underline;font-size:.84rem;font-weight:600;cursor:pointer;padding:0}.auth-button{width:100%;min-height:48px;border:none;border-radius:14px;font-size:.95rem;font-weight:700;font-family:Roboto Mono,monospace;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;display:flex;align-items:center;justify-content:center;margin-bottom:14px;letter-spacing:.02em}.auth-button.primary{background:linear-gradient(135deg,#292a35,#6a7f9e);color:#f2f2f2;box-shadow:0 8px 20px #2c293066}.auth-button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px #2c293075}.auth-button:disabled{opacity:.65;cursor:not-allowed;transform:none}.auth-switch{text-align:center;margin-top:2px}.auth-switch p,.auth-switch-copy{color:#a1acbb;font-size:.88rem;margin:8px 0 0}.switch-button{border:none;background:none;color:#f2f2f2;font-weight:600;cursor:pointer;margin-left:4px;text-decoration:underline;padding:0;font-size:inherit}.switch-button:hover{color:#fff}.otp-actions{text-align:center;margin:8px 0 14px}.resend-button{background:none;border:none;color:#a1acbb;font-weight:500;cursor:pointer;text-decoration:underline;font-size:.85rem;padding:0}.resend-button:hover:not(:disabled){color:#f2f2f2}.resend-button:disabled{opacity:.6;cursor:not-allowed}.auth-login-disclaimer{margin:0;text-align:center;color:#a1acbb;font-size:.88rem;line-height:1.4;max-width:min(1040px,100%)}@media (max-width: 960px){.auth-layout{width:min(460px,100%);grid-template-columns:1fr;gap:0}.auth-brand-panel{display:none}.auth-form-grid{grid-template-columns:1fr;gap:0}}@media (max-width: 480px){.auth-container{padding:16px;gap:10px}.auth-card{border-radius:20px;padding:24px 18px}.auth-title{font-size:2rem;margin-bottom:14px}.auth-mode-switch{max-width:100%}.form-group{margin-bottom:14px}.form-group input{min-height:44px;padding:10px 13px;border-radius:12px}.auth-button{min-height:46px}.auth-subtitle{font-size:1.2rem}.auth-description{font-size:.88rem}}
