/* PipFix customer sign-in and registration experience. */
.auth-page{padding:64px 0 84px}.auth-shell{width:min(1120px,calc(100% - 40px));min-height:680px;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);border:1px solid rgba(15,92,67,.15);border-radius:28px;background:#fff;box-shadow:0 30px 90px rgba(5,40,28,.15);isolation:isolate}.auth-promo{position:relative;overflow:hidden;padding:58px!important;background:radial-gradient(circle at 85% 10%,rgba(57,242,157,.19),transparent 30%),linear-gradient(145deg,#020806 0%,#071b13 55%,#0b2f21 100%)!important}.auth-promo:before,.auth-promo:after{content:"";position:absolute;border:1px solid rgba(57,242,157,.16);border-radius:50%;pointer-events:none}.auth-promo:before{width:330px;height:330px;right:-180px;top:70px}.auth-promo:after{width:220px;height:220px;right:-105px;top:125px}.auth-promo>*{position:relative;z-index:1}.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:auto;color:#fff;font-size:.78rem;font-weight:900;letter-spacing:.13em}.auth-brand img{width:38px;height:38px;border-radius:9px}.auth-promo .kicker{color:#62f4ad;margin-top:68px}.auth-promo h1{max-width:490px;margin:0 0 22px;color:#fff;font-size:clamp(2.35rem,4vw,4rem);line-height:.98;letter-spacing:-.052em}.auth-promo>p:not(.kicker){max-width:500px;color:#a9c1b7;font-size:1rem}.auth-benefits,.auth-promo ul{display:grid;gap:13px;margin:28px 0;padding:0;list-style:none}.auth-benefits li,.auth-promo li{position:relative;margin:0!important;padding-left:31px;color:#edf8f3;font-weight:700}.auth-benefits li:before,.auth-promo li:before{content:"✓";position:absolute;left:0;top:0;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#39f29d;color:#03120c;font-size:.72rem;font-weight:950}.auth-trust{display:flex;gap:8px;flex-wrap:wrap;margin-top:32px}.auth-trust span{padding:7px 10px;border:1px solid rgba(164,233,204,.2);border-radius:999px;color:#a9cabe;font-size:.68rem;font-weight:800;letter-spacing:.03em}.auth-form{width:100%;max-width:600px;align-self:center;padding:62px!important}.auth-form .auth-step{margin:0 0 7px;color:#087f5b;font-size:.7rem;font-weight:900;letter-spacing:.16em}.auth-form h2{margin:0;color:#071712;font-size:clamp(2.1rem,4vw,3.25rem);line-height:1;letter-spacing:-.045em}.auth-form>p.muted{margin:14px 0 30px;color:#687c73!important;font-size:.95rem}.auth-form .alert{border:1px solid #b9e4d3;border-left:4px solid #087f5b;border-radius:9px;background:#effaf6;margin:0 0 20px}.auth-form .alert.bad{border-color:#fac4c8;border-left-color:#df3344;background:#fff4f5}.auth-fields,.auth-form>.form{gap:18px!important}.auth-form .form label{gap:8px;color:#20352d;font-size:.82rem;font-weight:800}.auth-form .form input{min-height:54px!important;padding:13px 15px!important;border:1px solid #c8d8d1!important;border-radius:10px!important;background:#fbfdfc!important;font-size:.93rem!important;transition:border-color .2s,box-shadow .2s,background .2s}.auth-form .form input:hover{border-color:#9ebeb1!important}.auth-form .form input:focus{border-color:#087f5b!important;background:#fff!important;box-shadow:0 0 0 4px rgba(8,127,91,.1)!important}.auth-form .password-wrap button{right:9px;bottom:9px;min-height:36px!important;padding:6px 9px!important;border-radius:7px!important;color:#087f5b;font-size:.72rem!important}.auth-submit{min-height:52px!important;margin-top:2px;padding:12px 20px!important;border-radius:10px!important;background:linear-gradient(135deg,#087f5b,#05a873)!important;border-color:#087f5b!important;box-shadow:0 12px 26px rgba(8,127,91,.2);font-size:.88rem!important}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(8,127,91,.26)}.auth-note{margin:0;color:#7b8b84;font-size:.72rem;line-height:1.55}.auth-switch{margin:26px 0 0!important;padding-top:22px;border-top:1px solid #e2ebe7;text-align:center;color:#6a7b73}.auth-switch a{color:#087f5b;font-weight:850}.auth-form>.actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}.auth-form>.actions .btn{min-height:44px!important;margin:0!important;padding:10px!important;border-color:#cbdad4!important;border-radius:9px!important;background:#fff!important;color:#22513f!important}.auth-form>.actions .btn:hover{border-color:#087f5b!important;background:#f2faf7!important}.auth-form>.form+.actions:before{content:"New to PipFix?";grid-column:1/-1;color:#788981;font-size:.74rem;text-align:center}.password-strength{margin-bottom:13px}
@media(max-width:900px){.auth-page{padding:40px 0 60px}.auth-shell{grid-template-columns:1fr;min-height:0}.auth-promo{padding:38px!important}.auth-brand{margin-bottom:36px}.auth-promo .kicker{margin-top:0}.auth-promo h1{font-size:2.8rem}.auth-promo .auth-trust{display:none}.auth-form{max-width:none;padding:42px!important}}
@media(max-width:620px){.auth-page{padding:18px 0 38px!important}.auth-shell{width:calc(100% - 20px);border-radius:18px}.auth-promo{padding:25px!important}.auth-brand{margin-bottom:25px;font-size:.66rem}.auth-brand img{width:32px;height:32px}.auth-promo h1{font-size:2.15rem!important}.auth-promo>p:not(.kicker){font-size:.82rem!important}.auth-benefits,.auth-promo ul{gap:9px;margin:20px 0 0}.auth-benefits li,.auth-promo li{font-size:.77rem!important}.auth-form{padding:28px 22px!important}.auth-form h2{font-size:2rem!important}.auth-form>p.muted{font-size:.78rem!important;margin-bottom:22px}.auth-form .form{grid-template-columns:1fr!important}.auth-form .form input{min-height:49px!important;font-size:.82rem!important}.auth-form .form label{font-size:.73rem!important}.auth-submit{min-height:48px!important;font-size:.8rem!important}.auth-form>.actions{grid-template-columns:1fr}.auth-note,.auth-switch{font-size:.72rem!important}}

/* The existing login submit button does not use the registration-only helper class. */
.auth-form>.form>button.btn.full{min-height:52px!important;margin-top:2px;padding:12px 20px!important;border-radius:10px!important;background:linear-gradient(135deg,#087f5b,#05a873)!important;border-color:#087f5b!important;box-shadow:0 12px 26px rgba(8,127,91,.2);font-size:.88rem!important}.auth-form>.form>button.btn.full:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(8,127,91,.26)}

/* Affiliate login and application are intentionally separate views. */
.affiliate-join>.wrap{width:min(1120px,calc(100% - 40px))}.affiliate-message{max-width:1120px;margin:0 auto 18px}.affiliate-auth-shell{width:100%;min-height:700px}.affiliate-auth-form{max-width:none}.affiliate-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0 0 42px;padding:5px;border:1px solid #dbe7e2;border-radius:12px;background:#f2f7f5}.affiliate-auth-tabs a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 12px;border-radius:8px;color:#60736b;font-size:.76rem;font-weight:850}.affiliate-auth-tabs a.active{background:#fff;color:#087f5b;box-shadow:0 4px 16px rgba(15,67,48,.1)}.affiliate-fineprint{margin-top:30px!important;padding-top:22px;border-top:1px solid rgba(166,220,198,.18);color:#8fafa2!important;font-size:.75rem!important}.field-optional{margin-left:5px;color:#84958e;font-size:.68rem;font-weight:650}.affiliate-auth-form .password-strength{margin-bottom:0}.affiliate-auth-form .auth-switch{margin-top:28px!important}
@media(max-width:620px){.affiliate-join>.wrap{width:calc(100% - 20px)}.affiliate-auth-tabs{margin-bottom:28px}.affiliate-auth-tabs a{font-size:.67rem!important}.affiliate-auth-shell{min-height:0}}
