.auth{background:var(--bg);grid-template:"form brand"1fr"footer footer"/minmax(0,1fr) minmax(0,1fr);align-items:center;gap:32px;max-width:1400px;min-height:100vh;margin:0 auto;padding:32px;display:grid}body:has(.auth){background:var(--bg)}.auth-brand{color:#fff;background:linear-gradient(155deg,#311754eb 0%,#4c2f74e0 55%,#553483d1 100%),url(/assets/hero-bg.jpg) 50%/cover no-repeat;border-radius:24px;flex-direction:column;grid-area:brand;align-self:center;width:100%;max-height:800px;padding:56px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 120px 12px #31175499,0 24px 60px -20px #55348347}.auth-brand:after{content:"";pointer-events:none;background:radial-gradient(120% 100%,#0000 55%,#31175459 100%);position:absolute;inset:0}.auth-brand-inner{z-index:1;flex-direction:column;justify-content:center;height:100%;display:flex;position:relative}.auth-brand-logo{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.auth-brand-logo img{filter:brightness(0)invert();opacity:.95;width:auto;height:60px;display:block}.auth-brand-pitch{max-width:460px}.auth-brand-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--purple-300);background:#ffffff0f;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;margin-top:12px;margin-bottom:22px;padding:6px 12px;font-size:16px;font-weight:600;display:inline-flex}.auth-brand-eyebrow .dot{background:var(--purple-300);border-radius:50%;width:6px;height:6px}.auth-brand h1{letter-spacing:-.025em;color:#fff;text-wrap:balance;margin:0 0 18px;font-size:40px;font-weight:600;line-height:1.08}.auth-brand p.lead{color:#ffffffc7;max-width:440px;margin:0 0 28px;font-size:16px;line-height:1.6}.auth-brand-points{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.auth-brand-points li{color:#ffffffe0;align-items:flex-start;gap:12px;font-size:16px;line-height:1.5;display:flex}.auth-brand-points li svg{color:var(--purple-300);flex-shrink:0;margin-top:2px}.auth-brand-points strong{color:#fff;font-weight:600}.auth-brand-footer{border-top:1px solid #ffffff1a;flex-wrap:wrap;gap:28px;margin-top:36px;padding-top:24px;display:flex}.auth-brand-stat{flex-direction:column;display:flex}.auth-brand-stat-num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#fff;font-size:22px;font-weight:600}.auth-brand-stat-label{color:#ffffff9e;margin-top:2px;font-size:16px}.auth-form-panel{background:var(--bg);flex-direction:column;grid-area:form;justify-content:center;padding:16px 24px;display:flex;position:relative}.auth-form-logo{align-items:center;margin-bottom:20px;text-decoration:none;display:inline-flex}.auth-form-logo img{width:auto;height:80px;display:block}.auth-form-switch{text-align:center;color:var(--text-3);margin-top:16px;font-size:16px}.auth-form-switch a{color:var(--purple);margin-left:6px;font-weight:600;text-decoration:none}.auth-form-switch a:hover{color:var(--purple-mid);text-decoration:underline}.auth-form{width:100%;max-width:420px;margin:0 auto}.auth-form h2{letter-spacing:-.022em;color:var(--purple-deep);margin:0 0 8px;font-size:30px;font-weight:600;line-height:1.15}.auth-form p.sub{color:var(--text-3);margin:0 0 32px;font-size:16px;line-height:1.55}.auth-field{flex-direction:column;margin-bottom:16px;display:flex}.auth-field-row{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.auth-field label{color:var(--text-2);letter-spacing:.005em;font-size:16px;font-weight:600}.auth-field-row a.forgot{color:var(--purple);font-size:16px;font-weight:500;text-decoration:none}.auth-field-row a.forgot:hover{color:var(--purple-mid);text-decoration:underline}.auth-input{position:relative}.auth-input input{border:1px solid var(--border);background:var(--bg);width:100%;height:44px;color:var(--text);border-radius:10px;padding:0 14px 0 40px;font-family:inherit;font-size:16px;transition:border-color .12s,box-shadow .12s,background .12s}.auth-input input::placeholder{color:var(--text-4)}.auth-input input:focus{border-color:var(--purple);background:var(--bg);outline:none;box-shadow:0 0 0 4px #5534831f}.auth-input svg.lead{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.auth-input button.trail{cursor:pointer;width:32px;height:32px;color:var(--text-3);background:0 0;border:none;border-radius:6px;place-items:center;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.auth-input button.trail:hover{color:var(--text);background:var(--surface-2)}.auth-hint{color:var(--text-3);margin-top:6px;font-size:16px;line-height:1.45}.auth-hint.success{color:var(--green)}.auth-hint.warn{color:var(--orange)}.pw-meter{gap:4px;margin-top:8px;display:flex}.pw-meter span{background:var(--surface-3);border-radius:999px;flex:1;height:4px;transition:background .16s}.pw-meter[data-score="1"] span:nth-child(-n+1),.pw-meter[data-score="2"] span:nth-child(-n+2),.pw-meter[data-score="3"] span:nth-child(-n+3),.pw-meter[data-score="4"] span{background:var(--purple)}.pw-meter[data-score="1"] span:nth-child(-n+1){background:var(--red)}.pw-meter[data-score="2"] span:nth-child(-n+2){background:var(--orange)}.pw-meter[data-score="3"] span:nth-child(-n+3){background:var(--amber);background:#b59a1a}.pw-meter[data-score="4"] span{background:var(--green)}.auth-check{cursor:pointer;color:var(--text-2);-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;margin:4px 0 20px;font-size:16px;line-height:1.5;display:flex}.auth-check input{opacity:0;pointer-events:none;position:absolute}.auth-check .box{border:1.5px solid var(--border-strong);background:#fff;border-radius:5px;flex-shrink:0;width:18px;height:18px;margin-top:1px;transition:border-color .12s,background .12s;position:relative}.auth-check input:checked+.box{background:var(--purple);border-color:var(--purple)}.auth-check input:checked+.box:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.auth-check a{color:var(--purple);font-weight:500;text-decoration:none}.auth-check a:hover{text-decoration:underline}.auth-submit{background:var(--purple);color:#fff;letter-spacing:-.005em;border:1px solid var(--purple);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-family:inherit;font-size:16px;font-weight:600;transition:background .14s,transform 80ms;display:inline-flex;box-shadow:0 1px 2px #3117544d,inset 0 1px #ffffff2e}.auth-submit:hover{background:var(--purple-mid)}.auth-submit:active{transform:translateY(.5px)}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.auth-divider{color:var(--text-4);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:12px;margin:24px 0;font-size:16px;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border);flex:1;height:1px}.auth-sso{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-sso button{border:1px solid var(--border);height:44px;color:var(--text);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:16px;font-weight:500;transition:border-color .12s,background .12s;display:inline-flex}.auth-sso button:hover{border-color:var(--border-strong);background:var(--surface)}.auth-sso svg{width:18px;height:18px}.auth-trial{border:1px solid var(--purple-100);background:linear-gradient(#faf7ff 0%,#f5f1fe 100%);border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:14px 16px;display:flex}.auth-trial-icon{background:var(--purple);color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.auth-trial-body{min-width:0}.auth-trial-title{color:var(--purple-deep);margin-bottom:2px;font-size:16px;font-weight:600}.auth-trial-sub{color:var(--text-2);font-size:16px;line-height:1.45}.auth-footer{color:var(--text-4);grid-area:footer;justify-content:space-between;align-items:center;padding-top:16px;font-size:16px;display:flex}.auth-footer a{color:var(--text-3);margin-left:16px;text-decoration:none}.auth-footer a:hover{color:var(--text)}@media (max-width:960px){.auth{grid-template-columns:1fr;grid-template-areas:"form""footer";gap:16px;padding:16px}.auth-brand{display:none}.auth-form-panel{padding:24px}.auth-form{margin:32px auto}}@media (max-width:480px){.auth{padding:12px}.auth-form-panel{padding:16px}.auth-form h2{font-size:26px}.auth-sso{grid-template-columns:1fr}}
