/* FT Area Sign-in — isolated surface, does not alter the site's shared Free login. */
.ftpam-login-shell{--ftpam-bg-a:#071731;--ftpam-bg-b:#164f91;--ftpam-accent:#45d5ed;--ftpam-hero-ink:#f9fcff;--ftpam-angle:135deg;--ftpam-shade:.38;--ftpam-corner:24px;position:fixed;inset:0;z-index:90000;width:100vw;min-height:100vh;min-height:100dvh;overflow:auto;box-sizing:border-box;color:var(--ftpam-hero-ink);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;isolation:isolate;background:linear-gradient(var(--ftpam-angle),var(--ftpam-bg-a),var(--ftpam-bg-b));}
.ftpam-login-shell::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,10,26,var(--ftpam-shade)),rgba(2,10,26,calc(var(--ftpam-shade) * .35)));pointer-events:none;z-index:-1;}
.ftpam-login-shell::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 55% at 92% 10%,color-mix(in srgb,var(--ftpam-accent) 21%,transparent),transparent 75%),radial-gradient(ellipse 70% 62% at 7% 95%,rgba(45,125,255,.15),transparent 65%);pointer-events:none;}
.ftpam-login-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.ftpam-login-atmosphere span:first-child{position:absolute;left:-15%;bottom:-65%;width:90%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--ftpam-accent) 27%,transparent);border-radius:50%;transform:rotate(-25deg);box-shadow:0 0 100px color-mix(in srgb,var(--ftpam-accent) 9%,transparent)}
.ftpam-login-atmosphere span:last-child{position:absolute;right:-16%;top:-64%;width:90%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--ftpam-accent) 20%,transparent);border-radius:50%}
.ftpam-login-content{box-sizing:border-box;position:relative;width:min(1280px,100%);min-height:100vh;min-height:100dvh;margin:auto;padding:clamp(32px,6.5vw,90px);display:grid;grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);align-items:center;gap:clamp(48px,7vw,120px)}
.ftpam-login-hero{min-width:0;display:flex;flex-direction:column;justify-content:space-between;align-self:stretch;padding:14px 0 0}
.ftpam-login-brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:650;letter-spacing:.01em;min-height:50px}
.ftpam-login-logo{max-width:180px;max-height:50px;object-fit:contain;display:block}
.ftpam-login-brand-symbol{width:44px;height:44px;display:grid;place-items:center;color:#02182d;background:var(--ftpam-accent);border-radius:14px;font-size:26px;box-shadow:0 0 28px color-mix(in srgb,var(--ftpam-accent) 24%,transparent)}
.ftpam-login-copy{margin:80px 0;max-width:650px}
.ftpam-login-eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.23em;font-weight:800;text-transform:uppercase;color:var(--ftpam-accent);margin-bottom:23px}
.ftpam-login-small-spark{font-size:19px}.ftpam-login-heading{font-family:inherit!important;color:var(--ftpam-hero-ink)!important;font-size:clamp(40px,5vw,76px)!important;font-weight:700!important;line-height:1.08!important;letter-spacing:-.045em!important;max-width:750px;margin:0!important;overflow-wrap:anywhere;text-wrap:balance}
.ftpam-login-subtitle{color:var(--ftpam-hero-ink)!important;opacity:.81;font-size:clamp(17px,1.6vw,21px)!important;line-height:1.65!important;margin:28px 0 0!important;max-width:480px}
.ftpam-login-footnote{font-size:13px;opacity:.68;letter-spacing:.02em}.ftpam-login-footnote span{color:var(--ftpam-accent);margin-right:6px}
.ftpam-login-form-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.ftpam-login-panel{position:relative;padding:clamp(28px,3vw,48px);background:rgba(255,255,255,.92);border:1px solid rgba(255,255,255,.56);border-radius:var(--ftpam-corner);box-shadow:0 34px 105px rgba(0,7,21,.27),0 1px 0 rgba(255,255,255,.9) inset;color:#1b3450;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);}
.ftpam-login-card-glass .ftpam-login-panel{background:rgba(255,255,255,.88)}.ftpam-login-card-solid .ftpam-login-panel{background:#ffffff}
.ftpam-login-panel-accent{width:46px;height:46px;border-radius:15px;background:linear-gradient(145deg,var(--ftpam-bg-b),var(--ftpam-bg-a));display:grid;place-items:center;color:var(--ftpam-accent);font-size:23px;margin-bottom:24px}
.ftpam-login-panel-kicker{font-size:11px;letter-spacing:.18em;font-weight:800;color:#437090;margin-bottom:10px}
.ftpam-login-panel .ftpam-access{font-family:inherit;color:#1b3450;max-width:none!important;background:none!important;box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}
.ftpam-login-panel .ftpam-access h2{color:#172f48!important;font-size:clamp(24px,2vw,30px)!important;line-height:1.25!important;letter-spacing:-.035em!important;margin:0 0 20px!important;font-weight:700!important}
.ftpam-login-panel .ftpam-access p{color:#50657b!important;font-size:14px;line-height:1.65;margin:0 0 16px}
.ftpam-login-panel .ftpam-access form{margin:0;max-width:none!important;display:block}
.ftpam-login-panel .ftpam-access form p{margin:0 0 17px!important;padding:0!important}
.ftpam-login-panel .ftpam-access label,.ftpam-login-mock-fields label{display:block!important;font-size:13px!important;line-height:1.4!important;font-weight:650!important;color:#2e4761!important;margin-bottom:7px!important}
.ftpam-login-panel .ftpam-access input[type=text],.ftpam-login-panel .ftpam-access input[type=email],.ftpam-login-panel .ftpam-access input[type=password],.ftpam-login-panel .ftpam-access input:not([type]),.ftpam-login-mock-fields input{box-sizing:border-box!important;width:100%!important;max-width:100%!important;height:50px!important;padding:0 15px!important;font-size:15px!important;color:#1a3551!important;background:#f7f9fc!important;border:1px solid #d8e2ed!important;border-radius:5px!important;box-shadow:none!important;outline-offset:3px!important}
.ftpam-login-panel .ftpam-access input:focus-visible{border-color:#5085da!important;outline:2px solid #b6dbef!important}
.ftpam-login-panel .ftpam-access input[type=checkbox]{width:16px;height:16px;accent-color:var(--ftpam-bg-b)}
.ftpam-login-panel .ftpam-access input[type=submit],.ftpam-login-panel .ftpam-access button[type=submit],.ftpam-login-panel .ftpam-enter,.ftpam-mock-button{box-sizing:border-box!important;width:100%!important;display:block!important;text-align:center!important;background:linear-gradient(110deg,var(--ftpam-bg-b),var(--ftpam-bg-a))!important;border:1px solid transparent!important;border-radius:5px!important;color:#fff!important;font-weight:700!important;font-size:15px!important;letter-spacing:.01em!important;padding:15px 20px!important;min-height:51px!important;line-height:1.35!important;text-decoration:none!important;cursor:pointer;box-shadow:0 10px 24px rgba(13,59,127,.15)}
.ftpam-login-panel .ftpam-access a:not(.ftpam-enter){font-size:13px!important;color:#245caa!important;text-decoration:underline!important}
.ftpam-login-panel .ftpam-access .login-remember label{display:inline-flex!important;align-items:center;gap:9px;font-size:13px!important;font-weight:400!important}
.ftpam-login-under-panel{font-size:12px;text-align:center;color:var(--ftpam-hero-ink);opacity:.7}
.ftpam-login-under-panel span{color:var(--ftpam-accent)}
.ftpam-login-admin-link{position:fixed;right:18px;bottom:16px;z-index:2;color:#fff!important;text-decoration:none!important;font:600 12px/1.2 system-ui,sans-serif;background:rgba(3,23,53,.74);border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:12px 16px}
.ftpam-login-left .ftpam-login-hero{grid-column:2;grid-row:1}.ftpam-login-left .ftpam-login-form-column{grid-column:1;grid-row:1}
@media(max-width:830px){.ftpam-login-content{grid-template-columns:1fr;gap:32px;min-height:100vh;padding:40px 24px 55px}.ftpam-login-hero{gap:42px}.ftpam-login-copy{margin:15px 0 0}.ftpam-login-heading{font-size:clamp(34px,9vw,55px)!important}.ftpam-login-footnote{display:none}.ftpam-login-form-column{max-width:530px;width:100%;margin:0 auto}.ftpam-login-left .ftpam-login-hero,.ftpam-login-left .ftpam-login-form-column{grid-column:auto;grid-row:auto}}
@media(prefers-reduced-motion:reduce){.ftpam-login-shell *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.ftpam-login-background{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:center;pointer-events:none}

/* 0.3.18: area template and extended Visual Editor properties, shared by public and preview. */
.ftpam-login-shell.ftpam-login-card-glass .ftpam-login-panel{background:rgba(255,255,255,var(--ftpam-card-alpha,.88));}
.ftpam-login-shell .ftpam-login-panel{padding:var(--ftpam-card-padding,44px);}
.ftpam-login-shell .ftpam-login-logo{max-width:var(--ftpam-logo-width,180px);max-height:120px;}
.ftpam-login-shell .ftpam-login-heading{font-size:clamp(26px,5vw,var(--ftpam-heading-size,72px))!important;}
.ftpam-login-shell .ftpam-login-subtitle{margin-top:var(--ftpam-hero-spacing,28px)!important;}
.ftpam-login-shell .ftpam-login-form-column{gap:var(--ftpam-panel-spacing,16px);}
.ftpam-login-shell .ftpam-login-background{object-fit:var(--ftpam-bg-size,cover);object-position:var(--ftpam-bg-position,center);}
.ftpam-login-shell.ftpam-login-align-center .ftpam-login-copy{text-align:center;margin-inline:auto;}
.ftpam-login-shell.ftpam-login-align-center .ftpam-login-eyebrow{justify-content:center;}
.ftpam-login-shell.ftpam-login-align-right .ftpam-login-copy{text-align:right;margin-left:auto;}
.ftpam-login-shell.ftpam-login-align-right .ftpam-login-eyebrow{justify-content:flex-end;}
.ftpam-login-shell .ftpam-login-panel .ftpam-access input[type=submit],
.ftpam-login-shell .ftpam-login-panel .ftpam-access button[type=submit],
.ftpam-login-shell .ftpam-login-panel .ftpam-enter,
.ftpam-login-shell .ftpam-mock-button{background:var(--ftpam-button-bg,#164f91)!important;color:var(--ftpam-button-text,#fff)!important;border:var(--ftpam-button-border,0px) solid transparent!important;border-radius:var(--ftpam-button-radius,5px)!important;transition:background .15s ease,box-shadow .15s ease;}
.ftpam-login-shell .ftpam-login-panel .ftpam-access input[type=submit]:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access button[type=submit]:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-enter:hover{background:var(--ftpam-button-hover,#0c2b5b)!important;}
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit]:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button[type=submit]:hover{box-shadow:0 0 22px color-mix(in srgb,var(--ftpam-accent) 50%,transparent)!important;}
.ftpam-login-shell .ftpam-login-panel .ftpam-access input:not([type=submit]):not([type=checkbox]):not([type=hidden]){border-radius:var(--ftpam-input-radius,5px)!important;}
.ftpam-login-shell:not(.ftpam-login-glow)::after{display:none;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-content{width:min(940px,100%);grid-template-columns:1fr;gap:32px;align-content:center;justify-items:center;text-align:center;padding-block:65px;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-hero{width:100%;text-align:center;align-items:center;gap:22px;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-brand,.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-eyebrow{justify-content:center;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-copy{margin:20px auto 0;text-align:center;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-form-column{width:min(500px,100%);}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-footnote{display:none;}
.ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-heading{margin-inline:auto!important;}
.ftpam-login-shell.ftpam-login-template-obsidian .ftpam-login-panel{border:1px solid color-mix(in srgb,var(--ftpam-accent) 55%,#fff);box-shadow:0 36px 115px rgba(0,0,0,.55);}
.ftpam-login-shell.ftpam-login-template-obsidian .ftpam-login-panel-accent{border:1px solid var(--ftpam-accent);}
@media(max-width:830px){.ftpam-login-shell .ftpam-login-heading{font-size:clamp(28px,9vw,var(--ftpam-heading-size,72px))!important;}}

.ftpam-login-shell.ftpam-login-template-aurora.ftpam-login-left .ftpam-login-hero,.ftpam-login-shell.ftpam-login-template-aurora.ftpam-login-left .ftpam-login-form-column{grid-column:1;grid-row:auto;}
/* 0.3.19: same hover-color/lighting controls on public login and Studio preview. */
.ftpam-login-shell .ftpam-login-panel .ftpam-access input[type=submit],
.ftpam-login-shell .ftpam-login-panel .ftpam-access button[type=submit],
.ftpam-login-shell .ftpam-login-panel .ftpam-enter,
.ftpam-login-shell .ftpam-mock-button {
  border:var(--ftpam-button-border,0px) solid var(--ftpam-button-border-color,#164f91)!important;
  padding:var(--ftpam-button-padding-y,15px) var(--ftpam-button-padding-x,20px)!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access input[type=submit]:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access button[type=submit]:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-enter:hover,
.ftpam-login-shell .ftpam-mock-button:hover {
  background:var(--ftpam-button-hover,#0c2b5b)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
}
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit]:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button[type=submit]:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-enter:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-mock-button:hover {
  background:radial-gradient(circle 112px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),var(--ftpam-button-glow-color,#85cfff),var(--ftpam-button-hover,#0c2b5b) 95%)!important;
  box-shadow:0 0 22px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 35%,transparent)!important;
}

/* 0.3.20 — unmistakable cursor-following illumination, identical in editor and public sign-in. */
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit],
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button[type=submit],
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-enter,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-mock-button{
  transition:background .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit]:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button[type=submit]:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-enter:hover,
.ftpam-login-shell.ftpam-login-button-glow .ftpam-mock-button:hover{
  background:radial-gradient(circle 85px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%), color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 90%,white 10%) 0%,color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 25%,var(--ftpam-button-hover,#0c2b5b)) 70%,transparent 100%),var(--ftpam-button-hover,#0c2b5b)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  box-shadow:0 0 13px 3px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 62%,transparent),0 0 34px 8px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 32%,transparent)!important;
  transform:translateY(-1px);
}
@media(prefers-reduced-motion:reduce){.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit]:hover,.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button[type=submit]:hover,.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-enter:hover,.ftpam-login-shell.ftpam-login-button-glow .ftpam-mock-button:hover{transform:none;}}

/* v0.3.24: native Free embedded login inside the area design, without its extra card. */
.ftpam-login-shell .ftpam-access .asg-embed{max-width:none!important;width:100%!important;padding:0!important;margin:0!important;background:transparent!important;box-shadow:none!important;border:0!important;color:#1b3450!important;}
.ftpam-login-shell .ftpam-access .asg-embed h2{display:none!important;}
.ftpam-login-shell .ftpam-access .asg-embed label{color:#29425e!important;}
.ftpam-login-shell .ftpam-access .asg-embed input[type=text],
.ftpam-login-shell .ftpam-access .asg-embed input[type=password]{width:100%!important;max-width:100%!important;background:#f7f9fc!important;color:#203449!important;border-radius:var(--ftpam-input-radius,5px)!important;}
.ftpam-login-shell .ftpam-access .asg-embed .asg-embed-captcha{margin:18px 0!important;min-height:0!important;}
.ftpam-login-shell .ftpam-access .asg-embed .asg-embed-help a{color:#245caa!important;}
.ftpam-login-shell .ftpam-preview-note{padding:9px 11px;background:#e5f1ff;color:#274567!important;border-radius:5px;font-size:12px!important;}
.ftpam-login-shell .ftpam-preview-captcha{padding:12px;border:1px dashed #7d9fbe;border-radius:5px;color:#294562!important;background:#eef5fc;font-size:12px!important;}
.ftpam-login-shell .ftpam-preview-fields input:disabled{opacity:.85;cursor:not-allowed;}
.ftpam-login-shell .ftpam-preview-fields button:disabled{cursor:default;opacity:.65;}

/* v0.3.25 — shared, canonical layout for the public page, Studio, and read-only preview.
 * Do not change .ftpam-login-content columns in a Studio-only stylesheet.
 * Form width must be sufficient for Free CAPTCHA widgets on a normal desktop.
 */
.ftpam-login-shell .ftpam-login-content{
  width:min(1280px,100%);box-sizing:border-box;
  padding:clamp(28px,5vw,75px);
  grid-template-columns:minmax(0,1.07fr) minmax(410px,.93fr);
  gap:clamp(22px,4vw,65px);
}
.ftpam-login-shell .ftpam-login-form-column,
.ftpam-login-shell .ftpam-login-panel,
.ftpam-login-shell .ftpam-access,
.ftpam-login-shell .ftpam-access .asg-embed,
.ftpam-login-shell .ftpam-access form,
.ftpam-login-shell .ftpam-access form label{min-width:0;width:100%;max-width:none;box-sizing:border-box;}
.ftpam-login-shell .ftpam-login-panel{padding:clamp(20px,2.6vw,var(--ftpam-card-padding,44px));}
.ftpam-login-shell .ftpam-login-copy{margin:45px 0;}
.ftpam-login-shell .ftpam-login-heading{font-size:clamp(30px,4vw,var(--ftpam-heading-size,72px))!important;}
.ftpam-login-shell .ftpam-access h2{font-size:24px!important;}
.ftpam-login-shell .ftpam-access .asg-embed{
  display:block!important;margin:0!important;padding:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
  font:inherit!important;color:#1b3450!important;
}
.ftpam-login-shell .ftpam-access .asg-embed label,
.ftpam-login-shell .ftpam-access .ftpam-embed-preview label{
  display:block!important;margin:0 0 15px!important;padding:0!important;
  color:#2e4761!important;font:650 13px/1.4 Inter,system-ui,sans-serif!important;
}
.ftpam-login-shell .ftpam-access .asg-embed label input:not([type=hidden]):not([type=checkbox]),
.ftpam-login-shell .ftpam-access .ftpam-embed-preview label input{
  box-sizing:border-box!important;display:block!important;width:100%!important;
  max-width:100%!important;min-width:0!important;height:46px!important;
  margin:8px 0 0!important;padding:0 14px!important;
  border:1px solid #d8e2ed!important;border-radius:var(--ftpam-input-radius,5px)!important;
  background:#f7f9fc!important;color:#1a3551!important;box-shadow:none!important;
}
.ftpam-login-shell .ftpam-access .asg-embed button.asg-embed-submit{
  display:block!important;width:100%!important;min-width:0!important;
  max-width:100%!important;box-sizing:border-box!important;
  border-radius:var(--ftpam-button-radius,5px)!important;
  background:var(--ftpam-button-bg,#164f91)!important;
  color:var(--ftpam-button-text,#fff)!important;
  padding:var(--ftpam-button-padding-y,15px) var(--ftpam-button-padding-x,20px)!important;
  margin:13px 0 0!important;line-height:1.35!important;
  min-height:51px!important;font:700 15px/1.35 Inter,system-ui,sans-serif!important;
}
.ftpam-login-shell .ftpam-access .asg-embed .asg-embed-help{margin:8px 0 0!important;color:#50657b!important;font:13px/1.5 Inter,system-ui,sans-serif!important;}
.ftpam-login-shell .ftpam-access .asg-embed .asg-embed-help a{color:#245caa!important;}
.ftpam-login-shell .ftpam-access .asg-embed .asg-embed-captcha{margin:14px 0!important;min-height:0!important;max-width:100%!important;}
.ftpam-login-shell .ftpam-preview-challenge{
  display:flex;align-items:center;box-sizing:border-box;
  border-radius:5px;border:1px dashed #8aaac7;background:#f0f5fa;color:#42607c;
  min-height:55px;padding:9px 12px;font-size:12px;line-height:1.4;
}
.ftpam-login-shell .ftpam-access .ftpam-embed-preview .asg-embed-submit:disabled{opacity:1;cursor:default;}
.ftpam-login-shell .ftpam-access .ftpam-access-hint{margin:0 0 17px!important;}
@media(max-width:980px){
  .ftpam-login-shell .ftpam-login-content{grid-template-columns:minmax(0,1fr);gap:30px;}
  .ftpam-login-shell .ftpam-login-form-column{max-width:530px;width:100%;margin:0 auto;}
  .ftpam-login-shell .ftpam-login-copy{margin:15px 0 0;}
  .ftpam-login-shell .ftpam-login-heading{font-size:clamp(34px,7vw,55px)!important;}
  .ftpam-login-shell .ftpam-login-left .ftpam-login-hero,
  .ftpam-login-shell .ftpam-login-left .ftpam-login-form-column{grid-column:auto;grid-row:auto;}
}
@media(max-width:480px){
  .ftpam-login-shell .ftpam-login-content{padding:30px 20px 48px;gap:24px;}
  .ftpam-login-shell .ftpam-login-panel{padding:22px;}
  .ftpam-login-shell .ftpam-login-form-column{width:100%;}
}

/* 0.3.26: compact, true small-screen layout shared by public sign-in, visitor
   preview and the 390px Studio iframe. Desktop remains unchanged. On iPhone
   12 the former stretch/space-between hero left excessive blank space above
   the login; all three renderers now follow the same content-first flow. */
@media (max-width:600px) {
 .ftpam-login-shell .ftpam-login-content,
 .ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-content {
   display:flex!important;flex-direction:column!important;align-items:stretch!important;
   justify-content:flex-start!important;align-content:flex-start!important;
   width:100%!important;height:auto!important;min-height:100dvh!important;
   padding:24px 18px 32px!important;gap:20px!important;
 }
 .ftpam-login-shell .ftpam-login-hero,
 .ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-hero {
   display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
   align-self:stretch!important;align-items:stretch!important;
   width:100%!important;padding:0!important;gap:19px!important;
 }
 .ftpam-login-shell .ftpam-login-brand {
   min-height:0!important;gap:12px!important;align-items:center!important;
   font-size:14px!important;
 }
 .ftpam-login-shell .ftpam-login-logo {
   max-width:min(var(--ftpam-logo-width,180px),142px,38vw)!important;max-height:52px!important;height:auto!important;
 }
 .ftpam-login-shell .ftpam-login-copy,
 .ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-copy {
   width:100%!important;margin:0!important;
 }
 .ftpam-login-shell .ftpam-login-eyebrow {
   margin:0 0 10px!important;font-size:10px!important;letter-spacing:.15em!important;
 }
 .ftpam-login-shell .ftpam-login-small-spark{font-size:15px!important;}
 .ftpam-login-shell .ftpam-login-heading {
   font-size:clamp(28px,calc(var(--ftpam-heading-size,72px) * .5),40px)!important;line-height:1.12!important;
 }
 .ftpam-login-shell .ftpam-login-subtitle {
   font-size:15px!important;line-height:1.45!important;margin:clamp(9px,calc(var(--ftpam-hero-spacing,28px) * .45),18px) 0 0!important;
 }
 .ftpam-login-shell .ftpam-login-footnote {display:none!important;}
 .ftpam-login-shell .ftpam-login-form-column,
 .ftpam-login-shell.ftpam-login-template-aurora .ftpam-login-form-column {
   min-width:0!important;width:100%!important;max-width:none!important;
   margin:0!important;gap:11px!important;
 }
 .ftpam-login-shell .ftpam-login-panel {
   padding:clamp(16px,calc(var(--ftpam-card-padding,44px) * .5),28px)!important;
 }
 .ftpam-login-shell .ftpam-login-panel-accent {
   width:38px!important;height:38px!important;border-radius:12px!important;
   font-size:20px!important;margin-bottom:14px!important;
 }
 .ftpam-login-shell .ftpam-login-panel-kicker {
   font-size:10px!important;letter-spacing:.12em!important;margin-bottom:7px!important;
 }
 .ftpam-login-shell .ftpam-access h2 {
   font-size:22px!important;line-height:1.2!important;margin:0 0 10px!important;
 }
 .ftpam-login-shell .ftpam-access .ftpam-access-hint {
   font-size:13px!important;line-height:1.45!important;margin:0 0 12px!important;
 }
 .ftpam-login-shell .ftpam-access .asg-embed label,
 .ftpam-login-shell .ftpam-access .ftpam-embed-preview label {
   margin-bottom:10px!important;
 }
 .ftpam-login-shell .ftpam-access .asg-embed label input:not([type=hidden]):not([type=checkbox]),
 .ftpam-login-shell .ftpam-access .ftpam-embed-preview label input {
   height:43px!important;margin-top:5px!important;
 }
 .ftpam-login-shell .ftpam-access .asg-embed .asg-embed-captcha {
   margin:10px 0!important;
 }
 .ftpam-login-shell .ftpam-access .asg-embed button.asg-embed-submit {
   min-height:46px!important;padding:11px 14px!important;
 }
 .ftpam-login-shell .ftpam-access .asg-embed .asg-embed-help {
   margin-top:8px!important;
 }
}


/* 0.3.39: buttons on the real embedded Free access/registration flow must be
   styled by the AREA palette, never by the global site theme or Free defaults.
   Restrict to known action controls; CAPTCHA, privacy links and password-eye
   remain owned by their respective implementations. */
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs {
  display:flex!important;align-items:stretch!important;gap:10px!important;
  margin:0 0 20px!important;width:100%!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a {
  box-sizing:border-box!important;display:inline-flex!important;flex:1 1 0!important;
  align-items:center!important;justify-content:center!important;min-width:0!important;
  min-height:45px!important;padding:10px 13px!important;margin:0!important;
  background:#eaf0f7!important;color:#1b4165!important;
  border:1px solid #aec5dc!important;border-radius:var(--ftpam-button-radius,5px)!important;
  font:700 14px/1.3 Inter,system-ui,sans-serif!important;
  text-align:center!important;text-decoration:none!important;text-shadow:none!important;
  box-shadow:0 2px 5px rgba(10,40,72,.08)!important;
  cursor:pointer!important;transition:background .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a[aria-current="page"] {
  background:var(--ftpam-button-bg,#164f91)!important;
  color:var(--ftpam-button-text,#fff)!important;
  border-color:var(--ftpam-button-border-color,#164f91)!important;
  box-shadow:0 4px 13px rgba(13,59,127,.17)!important;
}
/* Free's inline stylesheet is deliberately superseded on this area only. */
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a:focus-visible {
  background:var(--ftpam-button-hover,#0c2b5b)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  border-color:var(--ftpam-button-border-color,#164f91)!important;
  text-decoration:none!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-open,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-confirm,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-cancel {
  box-sizing:border-box!important;display:inline-flex!important;
  align-items:center!important;justify-content:center!important;
  max-width:100%!important;min-height:44px!important;
  padding:11px 16px!important;
  border-radius:var(--ftpam-button-radius,5px)!important;
  background:var(--ftpam-button-bg,#164f91)!important;
  color:var(--ftpam-button-text,#fff)!important;
  border:1px solid var(--ftpam-button-border-color,#164f91)!important;
  font:700 14px/1.35 Inter,system-ui,sans-serif!important;
  text-decoration:none!important;text-align:center!important;text-shadow:none!important;
  box-shadow:0 7px 15px rgba(13,59,127,.14)!important;
  cursor:pointer!important;transition:background .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-cancel {
  background:#eff4fa!important;color:#244765!important;
  border-color:#bacde0!important;
  box-shadow:0 2px 6px rgba(10,35,70,.08)!important;
  font-weight:650!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-close {
  box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;
  border:1px solid #bacde0!important;border-radius:var(--ftpam-button-radius,5px)!important;
  background:#eff4fa!important;color:#244765!important;
  font:700 25px/1 system-ui,sans-serif!important;cursor:pointer!important;
  transition:background .18s ease,box-shadow .18s ease!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-open:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-confirm:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-cancel:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-close:hover,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-open:focus-visible,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-confirm:focus-visible,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-cancel:focus-visible,
.ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-close:focus-visible {
  background:var(--ftpam-button-hover,#0c2b5b)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  border-color:var(--ftpam-button-border-color,#164f91)!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access :is(.asg-embed-tabs > a,.asg-embed-submit,.ftpam-rules-open,.ftpam-rules-confirm,.ftpam-rules-cancel,.ftpam-rules-close):focus-visible {
  outline:2px solid var(--ftpam-accent,#45d5ed)!important;outline-offset:3px!important;
}
/* External registration providers return a link, but it must still look and
   behave like a real button in the area design, not a theme-coloured text link. */
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed a.asg-embed-submit {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-height:50px!important;box-sizing:border-box!important;
  margin:12px 0!important;padding:var(--ftpam-button-padding-y,15px) var(--ftpam-button-padding-x,20px)!important;
  background:var(--ftpam-button-bg,#164f91)!important;
  color:var(--ftpam-button-text,#fff)!important;
  border:1px solid var(--ftpam-button-border-color,#164f91)!important;
  border-radius:var(--ftpam-button-radius,5px)!important;
  font:700 15px/1.35 Inter,system-ui,sans-serif!important;
  text-align:center!important;text-decoration:none!important;
  box-shadow:0 9px 22px rgba(13,59,127,.15)!important;
  transition:background .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed a.asg-embed-submit:is(:hover,:focus-visible){
  background:var(--ftpam-button-hover,#0c2b5b)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  text-decoration:none!important;
}
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access .asg-embed a.asg-embed-submit:is(:hover,:focus-visible){
  background:radial-gradient(circle 88px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),
    var(--ftpam-button-glow-color,#85cfff),var(--ftpam-button-hover,#0c2b5b) 97%)!important;
  box-shadow:0 0 13px 3px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 60%,transparent),
             0 0 30px 7px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 30%,transparent)!important;
}
/* One illuminated design switch for every access action, including both tabs
   and the Rules modal. Turning it off in Visual Editor removes ALL these glows. */
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access :is(.asg-embed-tabs > a,.ftpam-rules-open,.ftpam-rules-confirm,.ftpam-rules-cancel,.ftpam-rules-close):is(:hover,:focus-visible) {
  background:radial-gradient(circle 88px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),
    color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 92%,white 8%) 0%,
    color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 26%,var(--ftpam-button-hover,#0c2b5b)) 68%,
    var(--ftpam-button-hover,#0c2b5b) 100%)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  box-shadow:0 0 13px 3px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 60%,transparent),
             0 0 30px 7px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 30%,transparent)!important;
  transform:translateY(-1px);
}
/* Non-interactive preview controls are not interactive even on hover. */
.ftpam-login-shell .ftpam-login-panel .ftpam-access :is(button,input[type=submit]):disabled {
  cursor:default!important;transform:none!important;
}
@media (max-width:480px){
  .ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a{font-size:13px!important;min-height:44px!important;padding:9px!important;}
  .ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-dialog-foot{gap:10px!important;}
  .ftpam-login-shell .ftpam-login-panel .ftpam-access .ftpam-rules-confirm{font-size:13px!important;}
}
@media (prefers-reduced-motion:reduce){
  .ftpam-login-shell .ftpam-login-panel .ftpam-access .asg-embed .asg-embed-tabs > a,
  .ftpam-login-shell .ftpam-login-panel .ftpam-access :is(.ftpam-rules-open,.ftpam-rules-confirm,.ftpam-rules-cancel,.ftpam-rules-close){transition:none!important;transform:none!important;}
}

/* 0.3.57 — policy links on standalone sign-in and self-registration. */
.ftpam-login-shell:has(>.ftpam-site-footer) .ftpam-login-content{min-height:calc(100dvh - 68px)}
.ftpam-login-shell>.ftpam-site-footer{position:relative;z-index:2;background:#071e36;color:#e5f2ff;border-top:1px solid #ffffff24;padding:17px clamp(24px,5vw,75px);font-size:13px}
.ftpam-login-shell>.ftpam-site-footer a{color:inherit}
@media(max-width:830px){.ftpam-login-shell:has(>.ftpam-site-footer) .ftpam-login-content{min-height:0}}

/* FT Design Library 2026 — five generic, customizable login layouts.
 * These selectors are confined to the five new model IDs. They do not change
 * existing midnight, aurora, obsidian, or previously saved area login designs.
 */
.ftpam-login-shell[class*="ftpam-login-template-ft-"]{
  --ft-model-ink:#f3f5fa;
  --ft-model-muted:#a9b6c7;
  --ft-model-form-bg:#090f17;
  --ft-model-input:#141e2a;
  --ft-model-edge:#253244;
  --ft-model-button:#d6ab67;
  --ft-model-button-text:#0a1520;
  --ft-model-accent:var(--ftpam-accent);
  font-family:Inter,"Helvetica Neue",Arial,system-ui,sans-serif;
  background:var(--ftpam-bg-b)!important;
  isolation:isolate;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"]::before{display:none}
.ftpam-login-shell[class*="ftpam-login-template-ft-"]::after{
  inset:0 50% 0 0;
  background:radial-gradient(ellipse at 43% 23%,color-mix(in srgb,var(--ft-model-accent) 6%,transparent),transparent 65%)!important;
  z-index:0;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-atmosphere{display:none}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-content{
  width:100%;max-width:none;min-height:100dvh;margin:0;padding:0;gap:0;
  grid-template-columns:1fr 1fr;align-items:stretch;position:relative;z-index:1;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-hero{
  background:radial-gradient(ellipse at 48% 16%,color-mix(in srgb,var(--ft-model-accent) 5%,transparent),transparent 75%),linear-gradient(150deg,var(--ftpam-bg-a),var(--ftpam-bg-b));
  border-right:1px solid color-mix(in srgb,var(--ft-model-accent) 29%,transparent);
  display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;
  min-height:100dvh;padding:clamp(32px,6vw,84px) clamp(30px,5.8vw,83px) 30px!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-brand{
  gap:14px;min-height:42px;font-weight:800;letter-spacing:.22em;font-size:12px;text-transform:uppercase;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-brand-emblem{display:none}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-brand-symbol{
  box-shadow:none;background:none;color:var(--ft-model-accent);border:1px solid var(--ft-model-accent);
  transform:rotate(45deg);border-radius:7px;width:36px;height:36px;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-copy{
  margin:auto 0 0!important;max-width:700px;padding:40px 0 0;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-eyebrow{
  margin-bottom:25px;letter-spacing:.28em;font-size:11px;font-weight:800;line-height:1.5;
  color:var(--ft-model-accent);
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-small-spark{font-size:11px;display:none}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-eyebrow::before{content:"";width:42px;height:2px;background:var(--ft-model-accent);display:block;position:absolute;transform:translateY(-29px)}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-heading{
  color:var(--ft-model-ink)!important;font-size:clamp(40px,5.0vw,85px)!important;
  line-height:1.03!important;letter-spacing:-.073em!important;font-weight:780!important;
  margin:0!important;max-width:760px!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-heading span{display:block}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-heading .ftpam-login-heading-accent{color:var(--ft-model-accent)!important}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-subtitle{
  color:var(--ft-model-muted)!important;opacity:1;margin:26px 0 0!important;max-width:480px;
  font-size:clamp(15px,1.4vw,18px)!important;line-height:1.8!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-graph{
  width:100%;height:170px;margin:40px 0 0;border-top:1px solid color-mix(in srgb,var(--ft-model-muted) 13%,transparent);
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-graph svg{width:100%;height:100%}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-graph-grid{stroke:color-mix(in srgb,var(--ft-model-muted) 10%,transparent);stroke-dasharray:3 8;stroke-width:1}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-graph-under{stroke:color-mix(in srgb,var(--ft-model-muted) 22%,transparent);stroke-width:1.5}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-graph-main{stroke:var(--ft-model-accent);stroke-width:2.1}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-footnote{
  margin-top:auto;padding-top:45px;text-transform:uppercase;color:var(--ft-model-muted);
  font-size:10px;letter-spacing:.11em;opacity:.8;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-form-column{
  width:100%;max-width:none!important;min-height:100dvh;margin:0!important;display:flex;
  flex-direction:column;justify-content:center;align-items:center;gap:0;
  background:var(--ft-model-form-bg);
  padding:90px clamp(30px,6.5vw,118px) 32px;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel,
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-card-solid .ftpam-login-panel{
  max-width:440px;width:100%;border:0!important;border-radius:0!important;
  padding:0!important;box-shadow:none!important;backdrop-filter:none!important;
  background:transparent!important;color:var(--ft-model-ink)!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel-accent{display:none}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel-kicker{
  letter-spacing:.23em;font-size:11px;text-transform:uppercase;color:var(--ft-model-muted);margin-bottom:43px;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access{
  padding:0!important;background:none!important;color:var(--ft-model-ink)!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access h2{
  font-size:clamp(30px,2.5vw,41px)!important;line-height:1.1!important;letter-spacing:-.055em!important;
  color:var(--ft-model-ink)!important;margin:0 0 18px!important;font-weight:780!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access p{
  color:var(--ft-model-muted)!important;font-size:13px!important;line-height:1.7!important;
  margin:0 0 23px!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access label,
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-embed-preview label{
  color:#c9d3df!important;font-size:12px!important;font-weight:650!important;line-height:1.45!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access input:not([type=checkbox]):not([type=hidden]):not([type=submit]){
  background:var(--ft-model-input)!important;border:1px solid var(--ft-model-edge)!important;
  border-radius:5px!important;color:#f5f7fa!important;height:49px!important;
  box-shadow:none!important;padding:0 14px!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access input:disabled{opacity:1!important;-webkit-text-fill-color:#e8edf6!important}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access input::placeholder{color:#8295a7!important}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access input[type=checkbox]{accent-color:var(--ft-model-accent)}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access .asg-embed-submit,
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access button[type=submit],
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access input[type=submit]{
  color:var(--ft-model-button-text)!important;
  background:var(--ftpam-button-bg,var(--ft-model-button))!important;
  border:0!important;border-radius:5px!important;box-shadow:none!important;
  min-height:53px!important;margin-top:18px!important;
  font-size:14px!important;font-weight:800!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access .asg-embed-help,
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-access .asg-embed-help a{
  color:var(--ft-model-muted)!important;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel .ftpam-preview-challenge{
  background:var(--ft-model-input);border-color:var(--ft-model-edge);color:#b8c8d9;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-under-panel{
  max-width:440px;width:100%;text-align:left;color:var(--ft-model-muted);opacity:.73;
  font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding-top:45px;
  border-top:1px solid var(--ft-model-edge);margin-top:50px;
}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-under-panel span{color:var(--ft-model-accent)}
.ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-background{
  inset:0 50% 0 0;width:50%;height:100%;object-fit:cover;opacity:.26;z-index:0;
}
.ftpam-login-shell.ftpam-login-template-ft-meridian{--ft-model-accent:#e4b760;--ft-model-form-bg:#080e15;--ft-model-input:#151f2d;--ft-model-edge:#283648;--ft-model-button-text:#07131b;background:#080e15!important}
.ftpam-login-shell.ftpam-login-template-ft-tide{--ft-model-accent:#8bd9d2;--ft-model-form-bg:#070e16;--ft-model-input:#151e2a;--ft-model-edge:#283848;--ft-model-button-text:#081921;background:#070e16!important}
.ftpam-login-shell.ftpam-login-template-ft-atlas{--ft-model-ink:#163f38;--ft-model-muted:#536963;--ft-model-accent:#2d7867;--ft-model-form-bg:#173e36;--ft-model-input:#245348;--ft-model-edge:#3a665a;--ft-model-button:#b4dccb;--ft-model-button-text:#102d2a;--ft-model-form-text:#f0f7f3;background:#173e36!important}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-hero{background:linear-gradient(135deg,#f8f4e9,#e8dfcd)}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-panel .ftpam-access h2{color:#f1f7f3!important}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-panel .ftpam-access label{color:#d6e5dd!important}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-panel-kicker{color:#b8d0c5}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-panel .ftpam-access p{color:#bed3cb!important}
.ftpam-login-shell.ftpam-login-template-ft-atlas .ftpam-login-under-panel{color:#d1e4d9}
.ftpam-login-shell.ftpam-login-template-ft-atelier{--ft-model-accent:#f0a6ce;--ft-model-form-bg:#151119;--ft-model-input:#251c29;--ft-model-edge:#493448;--ft-model-muted:#c5b3c2;--ft-model-button-text:#231220;background:#151119!important}
.ftpam-login-shell.ftpam-login-template-ft-atelier .ftpam-login-hero{background:radial-gradient(circle at 12% 82%,#5c254e,#211b28 65%)}
.ftpam-login-shell.ftpam-login-template-ft-atelier .ftpam-login-heading{font-family:Georgia,"Times New Roman",serif!important;font-weight:500!important;letter-spacing:-.06em!important}
.ftpam-login-shell.ftpam-login-template-ft-horizon{--ft-model-accent:#69b8ff;--ft-model-form-bg:#0a1a2c;--ft-model-input:#142b43;--ft-model-edge:#30506b;--ft-model-muted:#b0cce4;--ft-model-button-text:#06192a;background:#0a1a2c!important}
.ftpam-login-shell.ftpam-login-template-ft-horizon .ftpam-login-hero{background:radial-gradient(circle at 80% 65%,#16588a,#09182e 72%)}
.ftpam-login-shell.ftpam-login-template-ft-horizon .ftpam-login-graph{border-color:#1b3b5a}
@media(max-width:980px){
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-content{display:flex!important;flex-direction:column!important;min-height:100dvh!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-hero{min-height:0!important;padding:30px 24px!important;gap:24px!important;align-self:stretch!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-copy{margin:30px 0 0!important;padding:10px 0 0!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-heading{font-size:clamp(32px,7vw,60px)!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-graph{height:100px;margin:20px 0 0}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-footnote{display:none!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-form-column{min-height:0!important;max-width:none!important;width:100%!important;align-self:stretch!important;padding:34px 24px 45px!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-panel{max-width:500px}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-under-panel{max-width:500px}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-background{width:100%;height:40%;inset:0 0 auto}
}
@media(max-width:480px){
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-content{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-hero{min-height:0!important;padding:25px 20px 30px!important;gap:15px!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-brand{font-size:10px}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-copy{margin:22px 0 0!important;padding:0!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-heading{font-size:clamp(32px,10vw,48px)!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-subtitle{font-size:14px!important;margin:14px 0 0!important}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-graph{height:75px;margin:15px 0 0}
 .ftpam-login-shell[class*="ftpam-login-template-ft-"] .ftpam-login-form-column{padding:32px 20px!important}
}

/* Reusable decorations: external media is rendered as an image, never executable inline SVG. */
.ftpam-login-shell .ftpam-login-brand-emblem .ftpam-custom-emblem{display:block;width:100%;height:100%;object-fit:contain}
.ftpam-login-shell .ftpam-login-graph .ftpam-custom-chart{display:block;width:100%;height:100%;object-fit:contain}

/* 0.3.180 — independent outer glow. Preserves the existing cursor light switch.
   Keep this after model-specific button rules so the saved setting is visible. */
.ftpam-login-shell.ftpam-login-button-outer-glow .ftpam-login-panel .ftpam-access :is(.asg-embed-submit,input[type=submit],button[type=submit],.ftpam-rules-open,.ftpam-rules-confirm,.ftpam-rules-cancel,.ftpam-rules-close,.asg-embed-tabs > a,.ftpam-enter):not(:disabled) {
  box-shadow:0 0 14px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 32%,transparent)!important;
}
.ftpam-login-shell.ftpam-login-button-outer-glow .ftpam-login-panel .ftpam-access :is(.asg-embed-submit,input[type=submit],button[type=submit],.ftpam-rules-open,.ftpam-rules-confirm,.ftpam-rules-cancel,.ftpam-rules-close,.asg-embed-tabs > a,.ftpam-enter):not(:disabled):is(:hover,:focus-visible) {
  box-shadow:0 0 14px 3px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 62%,transparent),0 0 33px 7px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 28%,transparent)!important;
}
/* Both public login and editor sample use the actual cursor position. */
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access button.asg-embed-submit:is(:hover,:focus-visible),
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access a.asg-embed-submit:is(:hover,:focus-visible),
.ftpam-login-shell.ftpam-login-button-glow .ftpam-login-panel .ftpam-access input[type=submit]:is(:hover,:focus-visible) {
  background:radial-gradient(circle 85px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),
    color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 90%,white 10%) 0%,
    color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 23%,var(--ftpam-button-hover,#0c2b5b)) 66%,
    var(--ftpam-button-hover,#0c2b5b) 100%)!important;
  color:var(--ftpam-button-hover-text,#fff)!important;
  box-shadow:0 0 13px 3px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 50%,transparent),
             0 0 30px 7px color-mix(in srgb,var(--ftpam-button-glow-color,#85cfff) 27%,transparent)!important;
}

/* 0.3.181: Editable model footer captions. Decorative glyphs keep the accent;
   the caption itself inherits its original text color in every template. */
.ftpam-login-footnote .ftpam-login-footnote-text,
.ftpam-login-under-panel .ftpam-login-under-panel-text{
 color:inherit!important;margin-right:0!important;
 cursor:text;
}

/* 0.3.200: styles are only used when an FT login contains native Gutenberg content. */
.ftpam-login-extra-blocks{min-width:0;max-width:100%;overflow-wrap:anywhere}
.ftpam-login-extra-blocks .wp-block-heading{font:inherit;font-weight:700;font-size:clamp(1.1rem,2vw,1.6rem);line-height:1.3;margin:.85em 0 .4em}
.ftpam-login-extra-blocks p{margin:.5em 0 1em;line-height:1.55}
.ftpam-login-extra-blocks img{display:block;max-width:100%;height:auto;border-radius:6px}

/* 0.3.222 — Native Gutenberg content in the isolated login presentation.
   The protected authentication form is deliberately outside this scope. */
.ftpam-login-extra-gutenberg .wp-block-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0}
.ftpam-login-extra-gutenberg .wp-block-button{display:inline-flex;max-width:100%;margin:0}
.ftpam-login-extra-gutenberg .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:38px;padding:10px 18px;border:1px solid var(--ftpam-button-border-color,#b18f58);border-radius:var(--ftpam-button-radius,5px);background:var(--ftpam-button-bg,#d7aa66);color:var(--ftpam-button-text,#fff);font-weight:650;font-size:14px;line-height:1.3;text-align:center;text-decoration:none;cursor:pointer}
.ftpam-login-extra-gutenberg .wp-block-button__link:hover,.ftpam-login-extra-gutenberg .wp-block-button__link:focus-visible{background:var(--ftpam-button-hover,#c9a05f);color:var(--ftpam-button-hover-text,#fff)}

/* 0.3.228 — the native button's own padding controls its CLICKABLE AREA.
   Spacing attributes are mapped to link and outer wrapper separately in PHP.
   Optional per-button effects use Gutenberg's className, so no parallel store. */
.ftpam-login-extra-gutenberg .wp-block-button__link{
 box-sizing:border-box;
}
.ftpam-login-extra-gutenberg .wp-block-button.ftlc-button-cursor-light .wp-block-button__link{
 --ftpam-glow-x:50%;--ftpam-glow-y:50%;
}
.ftpam-login-extra-gutenberg .wp-block-button.ftlc-button-cursor-light .wp-block-button__link:is(:hover,:focus-visible){
 background-image:radial-gradient(circle 85px at var(--ftpam-glow-x) var(--ftpam-glow-y),
  color-mix(in srgb,var(--ftlc-button-cursor-color,var(--ftpam-button-glow-color,#85cfff)) 58%,transparent),transparent 95%)!important;
}
.ftpam-login-extra-gutenberg .wp-block-button.ftlc-button-outer-glow .wp-block-button__link:is(:hover,:focus-visible){
 box-shadow:0 0 13px 3px color-mix(in srgb,var(--ftlc-button-glow-color,var(--ftpam-button-glow-color,#85cfff)) 55%,transparent),
  0 0 30px 7px color-mix(in srgb,var(--ftlc-button-glow-color,var(--ftpam-button-glow-color,#85cfff)) 22%,transparent)!important;
}
/* Per-button hover colors, inherited from validated 6-digit tokens on the wrapper. */
.ftpam-login-extra-gutenberg .wp-block-button .wp-block-button__link:is(:hover,:focus-visible){
 background-color:var(--ftlc-button-hover-bg,var(--ftpam-button-hover,#c9a05f))!important;
 color:var(--ftlc-button-hover-text,var(--ftpam-button-hover-text,#fff))!important;
}
@media(prefers-reduced-motion:reduce){
 .ftpam-login-extra-gutenberg .wp-block-button.ftlc-button-cursor-light .wp-block-button__link,
 .ftpam-login-extra-gutenberg .wp-block-button.ftlc-button-outer-glow .wp-block-button__link{transition:none!important}
}

/* 0.3.230 — apply the native Buttons group's Gutenberg alignment and each
   button's native width. Scoped to extra login content; never the sign-in form. */
.ftpam-login-extra-gutenberg .wp-block-buttons.is-content-justification-center{justify-content:center}
.ftpam-login-extra-gutenberg .wp-block-buttons.is-content-justification-right{justify-content:flex-end}
.ftpam-login-extra-gutenberg .wp-block-buttons.is-content-justification-left{justify-content:flex-start}
.ftpam-login-extra-gutenberg .wp-block-buttons.is-content-justification-space-between{justify-content:space-between}
.ftpam-login-extra-gutenberg .wp-block-button.has-custom-width{max-width:100%}
.ftpam-login-extra-gutenberg .wp-block-button.wp-block-button__width-25{width:25%}
.ftpam-login-extra-gutenberg .wp-block-button.wp-block-button__width-50{width:50%}
.ftpam-login-extra-gutenberg .wp-block-button.wp-block-button__width-75{width:75%}
.ftpam-login-extra-gutenberg .wp-block-button.wp-block-button__width-100{width:100%}
.ftpam-login-extra-gutenberg .wp-block-button.has-custom-width .wp-block-button__link{width:100%}

/* 0.3.253 — FT Secure Login block visual attributes. Never control auth. */
.ftpam-secure-login-block-wrap{min-width:0;max-width:100%;box-sizing:border-box}
.ftpam-secure-login-block-wrap .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit){
 background:var(--ftpam-button-bg,#e7bb70)!important;color:var(--ftpam-button-text,#0c1627)!important;
 border-radius:var(--ftpam-button-radius,5px)!important;transition:background .15s ease,box-shadow .15s ease!important;
}
.ftpam-secure-login-block-wrap .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit):is(:hover,:focus-visible){
 background:var(--ftpam-button-hover,var(--ftpam-button-bg,#e7bb70))!important;
 color:var(--ftpam-button-hover-text,var(--ftpam-button-text,#0c1627))!important;
}
.ftpam-secure-login-block-wrap.ftpam-secure-login-halo .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit):is(:hover,:focus-visible){
 box-shadow:0 0 15px 3px color-mix(in srgb,var(--ftpam-button-bg,#e7bb70) 48%,transparent)!important;
}
.ftpam-secure-login-block-wrap.ftpam-secure-login-cursor .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit):is(:hover,:focus-visible){
 background:radial-gradient(circle 85px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),
 color-mix(in srgb,var(--ftpam-button-bg,#e7bb70) 80%,white) 0%,var(--ftpam-button-hover,var(--ftpam-button-bg,#e7bb70)) 100%)!important;
}

/* 0.3.260: independent, inherited secure login light colors. */
.ftpam-secure-login-block-wrap.ftpam-secure-login-halo .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit):is(:hover,:focus-visible){
 box-shadow:0 0 15px 3px color-mix(in srgb,var(--ftpam-outer-glow-color,var(--ftpam-button-glow-color,#85cfff)) 48%,transparent)!important;
}
.ftpam-secure-login-block-wrap.ftpam-secure-login-cursor .ftpam-access :is(input[type=submit],button[type=submit],a.asg-embed-submit,.asg-embed-submit):is(:hover,:focus-visible){
 background:radial-gradient(circle 85px at var(--ftpam-glow-x,50%) var(--ftpam-glow-y,50%),
 color-mix(in srgb,var(--ftpam-cursor-light-color,var(--ftpam-button-glow-color,#85cfff)) 80%,white) 0%,
 var(--ftpam-button-hover,var(--ftpam-button-bg,#e7bb70)) 100%)!important;
}
