.door-login{margin:0;background:#fcfcfa;color:#292c36;font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}.login-spread{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(380px,46%) 1fr}.door-story{position:relative;overflow:hidden;min-height:720px;background:#edeee8;padding:46px 12%;display:flex;flex-direction:column}.door-brand{display:inline-flex;gap:11px;align-items:center;text-decoration:none;color:#393547;width:max-content}.door-brand .asquala-mark{height:36px;width:36px;color:#5750a5}.door-brand span{font-size:29px;letter-spacing:-1.4px;font-weight:600}.door-message{margin-top:72px;position:relative;z-index:2}.door-eyebrow{font-size:9px!important;letter-spacing:1.7px;color:#77796f!important;font-weight:600}.door-message h2{font-size:clamp(48px,5.1vw,76px);font-weight:450;line-height:1.03;letter-spacing:-3.7px;margin:25px 0 20px;color:#393b35}.door-message>p{font-size:14px;line-height:1.8;color:#75786f}.door-scene{position:relative;min-height:300px;flex:1;width:100%;margin-top:25px}.door-halo{position:absolute;width:290px;height:290px;border:1px solid #d9dcd1;border-radius:50%;left:50%;top:10px;transform:translateX(-50%)}.door-arch{position:absolute;width:160px;height:240px;bottom:30px;left:50%;transform:translateX(-50%);border-radius:90px 90px 0 0;background:#c1c4b3;box-shadow:inset 8px 0 0 #cdd0c1}.door-opening{position:absolute;inset:14px 14px 0;border-radius:80px 80px 0 0;background:linear-gradient(130deg,#dadcc9,#faf9e9 75%)}.door-leaf{position:absolute;width:68px;height:181px;right:14px;bottom:0;background:#8d9280;clip-path:polygon(0 15%,100% 0,100% 100%,0 100%);box-shadow:inset -5px 0 #7e8572}.door-light{position:absolute;width:235px;height:50px;bottom:-19px;left:calc(50% - 165px);background:#f7f6e6;clip-path:polygon(42% 0,70% 0,100% 100%,0 100%)}.door-step{position:absolute;width:178px;height:7px;background:#b8bdae;bottom:23px;left:50%;transform:translateX(-50%)}.door-story-foot{font-size:10px;color:#797e70;margin-top:42px;position:relative}.login-side{display:flex;flex-direction:column;padding:48px 10% 30px}.login-context{font-size:9px;letter-spacing:1.8px;color:#868a82;text-align:right}.login-content{width:100%;max-width:350px;margin:auto; padding:65px 0}.login-content h1{font-size:36px;line-height:1.2;font-weight:500;letter-spacing:-1.5px;margin:0 0 12px}.login-content .auth-intro{color:#757b76;font-size:13px;line-height:1.8}.login-content .auth-form{margin-top:34px}.login-content .auth-field label{font-size:12px;font-weight:550;color:#424940;margin-bottom:9px}.login-content .auth-field input{height:46px;border:1px solid #d9ddd4;box-shadow:0 1px 2px #28302004;border-radius:6px;background:#fff;padding:10px 12px;font:inherit;font-size:14px}.login-content .password-control input{padding-right:64px}.login-content .auth-field input:focus-visible{outline:3px solid #5650b31c;border-color:#625abb;box-shadow:none}.login-content .password-toggle{top:5px;right:5px;color:#62695f;background:none;border:0;box-shadow:none;font-size:11px}.login-content .auth-field+.auth-field{margin-top:23px}.login-content .auth-submit{height:45px;margin-top:28px;background:#5149b9;border:1px solid #4941aa;border-radius:6px;box-shadow:0 1px 2px #29214418,inset 0 1px #ffffff20;color:#fff;font-size:13px;font-weight:550}.login-content .auth-submit:hover{background:#443da3}.login-content .auth-help{border:0;margin-top:32px;padding:0}.login-content .auth-help b{font-size:11px;font-weight:550;color:#626a60}.login-content .auth-help p{font-size:11px;line-height:1.8;color:#858c80;margin-top:4px}.login-footer{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#898e83}.login-footer>span{color:#999e94}.login-content .field-validation-error{display:block;font-size:11px;line-height:1.6;margin-top:7px;color:#ad332b}.login-content .field-validation-error:before{content:'!';display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:13px;height:13px;margin-right:6px;font-size:9px;font-weight:700}.login-content .field-validation-valid{display:none}.login-content .input-validation-error{border-color:#ba443c}.login-content .missing .field-validation-error{color:#936415}.login-content .missing .input-validation-error{border-color:#b88829}.login-content .auth-errors a{color:inherit;text-underline-offset:3px}.login-content .auth-errors.missing{background:#fff5df;color:#936415}.login-content .auth-errors h2{font-size:12px;margin:0 0 8px}.login-content :is(button,a):focus-visible{outline:3px solid #8f86d7;outline-offset:4px}@media(min-width:1500px){.door-story{padding-left:17%;padding-right:17%}}@media(max-width:950px){.login-spread{grid-template-columns:40% 60%}.door-story{min-height:680px;padding:35px 10%}.door-message h2{font-size:48px}.door-eyebrow{line-height:1.7}.login-side{padding:38px 9% 28px}}@media(max-width:700px){.login-spread{display:block}.door-story{min-height:0;padding:25px 7%;background:none}.door-message,.door-scene,.door-story-foot{display:none}.door-brand .asquala-mark{width:30px;height:30px}.door-brand span{font-size:25px}.login-side{padding:15px 7% 25px;min-height:calc(100svh - 86px)}.login-context{display:none}.login-content{padding:35px 0 60px}.login-content h1{font-size:32px}.login-footer{max-width:350px;width:100%;margin:0 auto}}

/* Founder-approved login: softer Mac-inspired controls (14 November 2026). */
.login-content .auth-field input {
  border-radius: 11px;
  box-shadow: inset 0 1px 2px #25302005, 0 1px 0 #ffffff;
  padding-left: 14px;
}
.login-content .auth-field input:focus-visible {
  outline: 3px solid #625abb26;
  outline-offset: 1px;
  border-color: #625abb;
  box-shadow: inset 0 1px 2px #25302005;
}
.login-content .password-control input { padding-right: 70px; }
.login-content .password-toggle {
  top: 7px;
  right: 7px;
  min-height: 32px;
  height: 32px;
  min-width: 50px;
  padding: 5px 10px;
  border: 1px solid #24293612;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px #2429360a, inset 0 1px #fff;
  color: #5e625c;
  font-weight: 550;
}
.login-content .password-toggle:hover { background: #f4f4f1; }
.login-content .password-toggle:active { background: #eaeae7; box-shadow: inset 0 1px 2px #2429360c; }
.login-content .auth-submit {
  height: 46px;
  border-radius: 12px;
  border-color: #4840a3;
  background: linear-gradient(180deg, #5c54c3, #5149b9);
  box-shadow: inset 0 1px 0 #ffffff30, 0 1px 2px #30256e20, 0 3px 7px -4px #30256e35;
  font-weight: 550;
}
.login-content .auth-submit:hover { background: linear-gradient(180deg, #635bca, #5750bf); }
.login-content .auth-submit:active {
  background: #4840a9;
  box-shadow: inset 0 1px 3px #30256e28, 0 1px 1px #30256e12;
}
