:root{--smo-ink:#261a3c;--smo-pink:#e4007f;--smo-teal:#007d86;--smo-mint:#8aeee1;--smo-line:#e9e1ec;--smo-soft:#faf7fb}
.smo-portal-entry,.smo-portal-auth{margin:0;background:#fff;color:var(--smo-ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
.smo-portal-entry *,.smo-portal-auth *{box-sizing:border-box}
.smo-portal-entry a,.smo-portal-auth a{color:var(--smo-teal);text-underline-offset:4px}
.smo-portal-entry a:hover,.smo-portal-auth a:hover{color:var(--smo-pink)}
.smo-portal-entry a:focus-visible,.smo-portal-entry input:focus-visible,.smo-portal-auth a:focus-visible,.smo-portal-auth input:focus-visible,.smo-portal-auth button:focus-visible{outline:3px solid var(--smo-teal);outline-offset:4px}
.smo-skip{position:absolute;top:-90px;left:20px;background:#fff;padding:12px;z-index:10}.smo-skip:focus{top:12px}
.smo-entry-header,.smo-entry-main,.smo-entry-footer{width:min(1280px,calc(100% - 96px));margin:auto}
.smo-entry-header{display:flex;align-items:center;justify-content:space-between;padding:35px 0 28px;border-bottom:1px solid var(--smo-line)}
.smo-wordmark{font-size:40px;font-weight:900;letter-spacing:-2px;line-height:1;text-decoration:none;color:var(--smo-ink)!important}.smo-wordmark>span{color:var(--smo-pink)}.smo-wordmark small{display:block;font-size:9px;letter-spacing:2px;font-weight:700;line-height:2}
.smo-staff-tag{font-size:12px;font-weight:700;padding:8px 16px;border:1px solid var(--smo-line);border-radius:99px}
.smo-entry-main{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(40px,7vw,110px);align-items:center;padding:70px 0 75px;min-height:650px}
.smo-eyebrow{display:block;color:var(--smo-teal);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:800}
.smo-entry-copy h1{font-size:clamp(76px,8vw,114px);letter-spacing:-6px;line-height:.94;margin:25px 0 27px;font-weight:900}.smo-entry-copy h1>span,.smo-login-intro h2>span{color:var(--smo-pink)}
.smo-entry-copy>p{font-size:19px;line-height:1.6;margin:0;max-width:460px}.smo-access-note{display:flex;gap:18px;align-items:center;border-top:3px solid var(--smo-mint);margin-top:42px;padding-top:22px}.smo-access-note>span{font-size:36px;line-height:1;color:var(--smo-teal)}.smo-access-note p{font-size:13px;margin:0;color:#655b72}
.smo-login-card{background:var(--smo-soft);border:1px solid var(--smo-line);border-top:7px solid var(--smo-pink);padding:clamp(28px,4vw,48px);border-radius:3px 3px 18px 18px;box-shadow:0 18px 55px -40px #5c315f66}
.smo-login-card h2{font-size:36px;line-height:1.1;letter-spacing:-1.4px;margin:12px 0}.smo-login-card>p{font-size:14px;color:#655b72;margin:12px 0 26px}
.smo-login-card form p{margin:0 0 20px}.smo-login-card label{display:block;font-size:13px;font-weight:700;margin-bottom:8px}
.smo-login-card input[type=text],.smo-login-card input[type=password]{font:inherit;font-size:17px;background:white;border:1px solid #cfc3d6;border-radius:5px;width:100%;height:51px;padding:10px 12px;color:var(--smo-ink)}
.smo-login-card input[type=submit]{display:block;width:100%;padding:15px 14px;border:0;border-radius:5px;background:var(--smo-ink);color:#fff;font:700 15px Arial,Helvetica,sans-serif;cursor:pointer;line-height:1.4;white-space:normal}.smo-login-card input[type=submit]:hover{background:#46325f}
.smo-login-links{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:12px}.smo-login-card p.smo-login-help{font-size:12px;border-top:1px solid var(--smo-line);padding-top:20px;margin:24px 0 0}
.smo-entry-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--smo-line);padding:25px 0 30px;font-size:12px;color:#655b72}
/* Core authentication, recovery, and security-plugin challenges keep their native hooks. */
body.smo-portal-auth{min-height:100vh;background:linear-gradient(120deg,#fff 50%,#fdf4fa 100%)}
.smo-portal-auth #login{width:min(460px,calc(100% - 40px));padding:45px 0 20px}
.smo-portal-auth #login h1 a{background:none;width:auto;height:auto;margin:0 auto 28px;text-indent:0;font-size:25px;font-weight:800;letter-spacing:-1px;color:var(--smo-ink);line-height:1.2}
.smo-portal-auth .smo-login-intro{text-align:center;margin:20px 0 30px}.smo-portal-auth .smo-login-intro h2{font-size:48px;line-height:1;letter-spacing:-2px;margin:14px 0}.smo-portal-auth .smo-login-intro p{font-size:14px;line-height:1.6;color:#655b72;padding:0 20px}
.smo-portal-auth #login form{margin:0;background:#fff;border:1px solid var(--smo-line);border-top:6px solid var(--smo-pink);padding:30px;border-radius:4px 4px 14px 14px;box-shadow:0 18px 45px -35px #5c315f66}
.smo-portal-auth #login label{font-size:14px;color:var(--smo-ink)}.smo-portal-auth #login input.input{border:1px solid #cfc3d6;border-radius:5px;font-size:22px;color:var(--smo-ink)}
.smo-portal-auth #login .button-primary{background:var(--smo-ink);border-color:var(--smo-ink);color:#fff;text-shadow:none;box-shadow:none;min-height:40px;padding:5px 22px;font-weight:700;border-radius:5px}.smo-portal-auth #login .button-primary:hover{background:#46325f}.smo-portal-auth #login .button-secondary{color:var(--smo-teal)}
.smo-portal-auth #login #nav,.smo-portal-auth #login #backtoblog{padding:0;text-align:center;font-size:13px}.smo-portal-auth #login #nav a,.smo-portal-auth #login #backtoblog a{color:var(--smo-teal)}
.smo-portal-auth #login .message,.smo-portal-auth #login .notice,.smo-portal-auth #login #login_error{box-shadow:none;border-left:4px solid var(--smo-teal);background:#ecfbf8;font-size:14px}.smo-portal-auth #login #login_error{border-color:var(--smo-pink);background:#fff0f7}
.smo-core-footer{font-size:12px;text-align:center;color:#655b72;margin:5px 20px 30px}.smo-core-footer span{display:block;font-size:11px;margin-top:5px}
@media(max-width:760px){.smo-entry-header,.smo-entry-main,.smo-entry-footer{width:calc(100% - 40px)}.smo-entry-header{padding-top:24px}.smo-entry-main{grid-template-columns:1fr;gap:35px;padding:40px 0}.smo-entry-copy h1{font-size:72px;letter-spacing:-4px;margin:18px 0}.smo-entry-copy h1 br{display:none}.smo-entry-copy h1 br:after{content:' '}.smo-entry-copy>p{font-size:16px}.smo-access-note{display:none}.smo-login-card{padding:28px}.smo-entry-footer{flex-direction:column;gap:12px}.smo-entry-copy .smo-eyebrow{font-size:10px}}
@media(max-width:400px){.smo-entry-copy h1{font-size:60px;letter-spacing:-3px}.smo-login-card{padding:23px}.smo-wordmark{font-size:34px}.smo-login-links{flex-direction:column;gap:12px}.smo-login-card h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){.smo-portal-entry *,.smo-portal-auth *{scroll-behavior:auto;animation:none!important;transition:none!important}}
