.aslpp-shell {
  --aslpp-accent:#2457d6; --aslpp-button-text:#fff; --aslpp-background:#f3f5f8;
  --aslpp-panel:#fff; --aslpp-text:#172033; --aslpp-radius:20px; --aslpp-width:480px; --aslpp-overlay:.35;
  position:relative; isolation:isolate; display:grid; place-items:center; min-height:620px;
  width:100%; max-width:none; padding:64px 24px; overflow:hidden; box-sizing:border-box;
  background:var(--aslpp-background); color:var(--aslpp-text); text-align:left; font:inherit;
}
.aslpp-shell *, .aslpp-shell *::before, .aslpp-shell *::after { box-sizing:border-box; }
.aslpp-shell .aslpp-background { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; margin:0; border:0; border-radius:0; }
.aslpp-shell .aslpp-scrim { position:absolute; z-index:-1; inset:0; pointer-events:none; }
.aslpp-shell:has(.aslpp-background) .aslpp-scrim { background:rgba(8,15,30,var(--aslpp-overlay)); }
.aslpp-shell .aslpp-card { width:min(100%,var(--aslpp-width)); padding:42px; background:var(--aslpp-panel); color:var(--aslpp-text); border:1px solid rgba(16,24,40,.07); border-radius:var(--aslpp-radius); box-shadow:0 24px 70px -24px rgba(16,24,40,.3); overflow-wrap:anywhere; }
.aslpp-shell.aslpp-split { justify-items:end; padding-inline:8%; }
.aslpp-shell.aslpp-font-system { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
.aslpp-shell.aslpp-font-serif { font-family:Georgia,"Times New Roman",serif; }
.aslpp-shell .aslpp-logo { display:block; width:auto; height:auto; max-width:200px; max-height:72px; object-fit:contain; margin:0 0 32px; border:0; }
.aslpp-shell .aslpp-lock { display:grid; place-items:center; width:46px; height:46px; margin:0 0 24px; border:1px solid rgba(16,24,40,.12); border-radius:13px; color:var(--aslpp-accent); }
.aslpp-shell .aslpp-lock svg { width:23px; height:23px; }
.aslpp-shell .aslpp-eyebrow { margin:0 0 12px; font-family:inherit; font-size:10px; line-height:1.6; font-weight:700; letter-spacing:.15em; color:var(--aslpp-text); }
.aslpp-shell .aslpp-heading { padding:0; margin:0 0 14px; color:var(--aslpp-text); font-family:inherit; font-size:clamp(26px,2.7vw,36px); font-weight:650; line-height:1.16; letter-spacing:-.035em; text-transform:none; }
.aslpp-shell .aslpp-description { padding:0; margin:0 0 28px; color:var(--aslpp-text); font-family:inherit; font-size:15px; line-height:1.65; white-space:pre-line; }
.aslpp-shell .aslpp-form { display:grid; gap:10px; padding:0; margin:0; border:0; }
.aslpp-shell .aslpp-form p { display:contents; padding:0; margin:0; }
.aslpp-shell .aslpp-form br { display:none; }
.aslpp-shell .aslpp-card > p:empty { display:none; }
.aslpp-shell input.aslpp-password:disabled, .aslpp-shell button.aslpp-submit:disabled { opacity:1; }
.aslpp-shell .aslpp-form label { display:block; padding:0; margin:0; color:var(--aslpp-text); font-family:inherit; font-size:13px; font-weight:600; line-height:1.5; }
.aslpp-shell input.aslpp-password { display:block; width:100%; max-width:none; min-width:0; min-height:50px; padding:12px 15px; margin:0; border:1px solid #a4adbb; border-radius:8px; box-shadow:none; color:var(--aslpp-text); background:var(--aslpp-panel); font-family:inherit; font-size:16px; line-height:1.5; }
.aslpp-shell input.aslpp-password::placeholder { color:var(--aslpp-text); opacity:.7; }
.aslpp-shell button.aslpp-submit { display:flex; align-items:center; justify-content:space-between; gap:16px; width:100%; min-height:50px; max-width:none; padding:13px 17px; margin:6px 0 0; border:2px solid transparent; border-radius:8px; box-shadow:none; color:var(--aslpp-button-text); background:var(--aslpp-accent); font-family:inherit; font-size:15px; font-weight:650; line-height:1.5; letter-spacing:0; text-transform:none; cursor:pointer; transition:filter .15s ease; }
.aslpp-shell button.aslpp-submit:hover { color:var(--aslpp-button-text); background:var(--aslpp-accent); filter:brightness(.9); transform:none; }
.aslpp-shell button.aslpp-submit:focus-visible, .aslpp-shell input.aslpp-password:focus-visible { outline:3px solid var(--aslpp-text); outline-offset:4px; }
.aslpp-shell .aslpp-error { margin:0 0 22px; padding:12px 14px; color:#7d1720; background:#fff1f2; border:1px solid #e5a4ab; border-radius:8px; font-size:14px; line-height:1.5; }
.aslpp-shell .aslpp-footer { padding:0; margin:24px 0 0; color:var(--aslpp-text); font-size:12px; line-height:1.6; }
.aslpp-shell .aslpp-footer:empty { display:none; }
body.aslpp-fullscreen { margin:0; padding:0; }
body.aslpp-fullscreen #aslpp-access { margin:0; padding:0; width:100%; }
body.aslpp-fullscreen .aslpp-shell { min-height:100vh; min-height:100svh; }
body.admin-bar.aslpp-fullscreen .aslpp-shell { min-height:calc(100svh - 32px); }
@media (max-width:600px) {
  .aslpp-shell, .aslpp-shell.aslpp-split { min-height:520px; padding:32px 16px; justify-items:center; }
  .aslpp-shell .aslpp-card { padding:28px 24px; }
  .aslpp-shell .aslpp-heading { font-size:28px; }
  .aslpp-shell .aslpp-logo { max-width:160px; margin-bottom:26px; }
  body.admin-bar.aslpp-fullscreen .aslpp-shell { min-height:calc(100svh - 46px); }
}
@media (prefers-reduced-motion:reduce) { .aslpp-shell button.aslpp-submit { transition:none; } }
