.bosen-auth{-webkit-font-smoothing:antialiased;background:#0c375b;min-height:100vh;font-family:Inter,system-ui,-apple-system,sans-serif}.auth-layout{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-hero{background-color:#0c375b;background-image:url(/images/auth-bg.svg);background-position:50%;background-size:cover;flex-direction:column;justify-content:flex-end;padding:3rem;display:flex;position:relative;overflow:hidden}.auth-hero:before{content:"";z-index:1;background:linear-gradient(160deg,#0c375b73 0%,#0c375be0 60%,#0c375bf7 100%);position:absolute;inset:0}.auth-hero:after{content:"";z-index:1;border:60px solid #a88f3f1f;border-radius:50%;width:320px;height:320px;position:absolute;top:-80px;right:-80px}.auth-hero__inner{z-index:2;position:relative}.auth-hero__inner:before{content:"";background:#e0c264;border-radius:2px;width:44px;height:3px;margin-bottom:1.5rem;display:block}.auth-hero__logo{z-index:2;align-items:center;gap:.75rem;text-decoration:none;display:flex;position:absolute;top:2.5rem;left:3rem}.auth-hero__logo img{width:auto;height:36px;display:block}.auth-hero__logo-text{color:#fff;font-family:Playfair Display,Georgia,serif;font-size:1.25rem;font-weight:700;line-height:1}.auth-hero__logo-text em{color:#e0c264;font-style:normal}.auth-hero__headline{color:#fff;margin:0 0 1rem;font-family:Playfair Display,Georgia,serif;font-size:clamp(1.75rem,2.8vw,2.5rem);font-weight:700;line-height:1.2}.auth-hero__sub{color:#fff9;max-width:360px;margin:0 0 2.5rem;font-size:.9375rem;line-height:1.7}.auth-hero__badges{flex-wrap:wrap;gap:1.5rem;display:flex}.auth-hero__badge{color:#ffffff8c;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.auth-hero__badge i{color:#e0c264;font-size:1rem}.auth-form-panel{background:#fff;justify-content:center;align-items:center;padding:3rem 2.5rem;display:flex;position:relative}.auth-form-panel:before{content:"";background:linear-gradient(90deg,#a88f3f,#e0c264,#a88f3f);width:100%;height:4px;position:absolute;top:0;left:0}.auth-form-panel__inner{width:100%;max-width:400px}.auth-form__logo-mobile{margin-bottom:2rem;display:none}.auth-form__logo-mobile img{filter:brightness(0)saturate()invert(18%)sepia(55%)saturate(600%)hue-rotate(181deg)brightness(90%);height:36px}.auth-form__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#a88f3f;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.75rem;font-weight:700;display:inline-flex}.auth-form__title{color:#0c375b;margin:0 0 .5rem;font-family:Playfair Display,Georgia,serif;font-size:2rem;font-weight:700;line-height:1.2}.auth-form__sub{color:#6b7280;margin:0 0 2rem;font-size:.9375rem;line-height:1.6}.auth-alert{border-radius:.5rem;align-items:flex-start;gap:.625rem;margin-bottom:1.25rem;padding:.875rem 1rem;font-size:.875rem;line-height:1.5;display:flex}.auth-alert--error{color:#dc2626;background:#fee2e2;border:1px solid #fecaca}.auth-alert--info{color:#1d4ed8;background:#dbeafe;border:1px solid #bfdbfe}.auth-alert i{flex-shrink:0;margin-top:1px;font-size:1rem}.auth-form-group{margin-bottom:1.25rem}.auth-form-label{color:#374151;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.auth-input-wrap{position:relative}.auth-input-icon{color:#9ca3af;pointer-events:none;z-index:1;font-size:1.05rem;transition:color .15s;position:absolute;top:50%;left:.9rem;transform:translateY(-50%)}.auth-input{color:#111827;background:#fff;border:1.5px solid #d1d5db;border-radius:.5rem;outline:none;width:100%;padding:.75rem .875rem .75rem 2.75rem;font-family:inherit;font-size:.9375rem;line-height:1.5;transition:border-color .15s,box-shadow .15s;display:block}.auth-input::placeholder{color:#9ca3af}.auth-input:focus{border-color:#a88f3f;box-shadow:0 0 0 3px #a88f3f26}.auth-input:focus~.auth-input-icon,.auth-input-wrap:focus-within .auth-input-icon{color:#a88f3f}.auth-input.is-invalid{background:#fff9f9;border-color:#dc2626}.auth-input.is-invalid:focus{box-shadow:0 0 0 3px #dc26261f}.auth-input-toggle{color:#9ca3af;z-index:2;border-radius:.25rem;padding:.25rem;font-size:1rem;line-height:1;transition:color .15s;position:absolute;top:50%;right:.875rem;transform:translateY(-50%)}.auth-input-toggle:hover{color:#374151}.auth-input--with-toggle{padding-right:2.75rem}.auth-field-error{color:#dc2626;align-items:center;gap:.375rem;margin-top:.375rem;font-size:.8125rem;font-weight:500;display:flex}.auth-field-error i{flex-shrink:0;font-size:.875rem}.auth-form-options{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1.5rem;display:flex}.auth-remember{color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.auth-remember input[type=checkbox]{accent-color:#a88f3f;cursor:pointer;border-radius:3px;flex-shrink:0;width:16px;height:16px}.auth-submit{color:#fff;cursor:pointer;background:#a88f3f;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:700;line-height:1;transition:background .15s,transform .1s,box-shadow .15s;display:flex;position:relative;overflow:hidden}.auth-submit:hover{background:#0c375b;box-shadow:0 4px 14px #0c375b40}.auth-submit:active{transform:translateY(1px)}.auth-submit:disabled,.auth-submit.is-loading{opacity:.65;pointer-events:none}.auth-submit.is-loading .auth-submit-icon{display:none}.auth-submit.is-loading:after{content:"";border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;margin-right:.5rem;animation:.65s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-footer-note{text-align:center;color:#9ca3af;margin-top:2rem;font-size:.75rem;line-height:1.6}.auth-footer-note a{color:#a88f3f;font-weight:600;text-decoration:none}.auth-footer-note a:hover{text-decoration:underline}@media (width<=900px){.auth-layout{grid-template-columns:1fr}.auth-hero{justify-content:flex-start;min-height:240px;padding:4.5rem 2rem 2rem}.auth-hero__sub,.auth-hero__badges{display:none}.auth-hero__headline{font-size:1.5rem}.auth-form-panel{padding:2.5rem 1.5rem 3rem}.auth-form__logo-mobile{display:block}}@media (width<=480px){.auth-hero{min-height:180px}.auth-form-panel{align-items:flex-start;padding:2rem 1.25rem 2.5rem}.auth-form__title{font-size:1.625rem}}
