:root{font-family:system-ui,sans-serif;color:#111;background:#cccbcd;font-size:16px}*{box-sizing:border-box}body{margin:0}.login-shell{min-height:100svh;display:grid;grid-template-columns:1fr 1fr}.intro{padding:clamp(32px,6vw,88px);background:#101110;color:white;display:flex;flex-direction:column;justify-content:space-between;gap:64px;background-image:repeating-linear-gradient(135deg,transparent 0 58px,#ffffff06 59px 60px)}.brand{display:flex;gap:12px;align-items:center;font-size:28px;font-weight:800;color:inherit;text-decoration:none;letter-spacing:-1px}.brand span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#39ff14;color:#000}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;margin:0 0 24px}.intro .eyebrow{color:#39ff14}h1{font-size:clamp(40px,4.4vw,68px);line-height:1.07;letter-spacing:-3px;margin:0 0 28px}.intro-copy{color:#b8bcb8;font-size:19px;line-height:1.7}.footer{color:#959b95;font-size:13px}.login-panel{background:white;display:flex;align-items:center;justify-content:center;padding:56px 32px}.form-wrap{max-width:400px;width:100%}h2{font-size:36px;letter-spacing:-1px;margin:0 0 12px}.subtitle{color:#444;line-height:1.6;margin:0 0 36px}label{display:block;font-size:14px;font-weight:650;margin-bottom:9px}input{width:100%;border:1px solid #bfc3bf;border-radius:9px;padding:15px 14px;font:inherit;min-height:52px;margin-bottom:24px}button{font:inherit;cursor:pointer}.password-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.password-label button{font-size:12px;border:0;background:none;text-decoration:underline;padding:0}.password-label label{margin-bottom:9px}#sign-in{border:2px solid #000;background:#39ff14;min-height:54px;border-radius:9px;font-weight:750;width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 20px;margin-top:12px}#sign-in:hover{background:#2be40a}button:disabled{opacity:.55;cursor:wait}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #111;outline-offset:4px}#login-error{color:#921d10;line-height:1.5}#login-error:empty{display:none}.help{font-size:14px;line-height:1.7;text-align:center;margin-top:28px;color:#444}.security-note{font-size:12px;text-align:center;color:#444;margin-top:40px}.notice{border:1px solid #111;border-radius:8px;padding:12px;line-height:1.5;font-size:13px;background:#f5fff3;margin-bottom:24px}[hidden]{display:none!important}@media(max-width:720px){.login-shell{grid-template-columns:1fr}.intro{padding:24px;gap:24px}.intro h1,.intro-copy,.intro .eyebrow,.footer{display:none}.intro>div{display:none}.login-panel{padding:40px 24px;align-items:start}h2{font-size:32px}}

.account-primary{border:2px solid #000;background:#39ff14;border-radius:9px;min-height:52px;padding:12px 20px;font-weight:750;width:100%;margin:0 0 24px}#password-help{font-size:13px;color:#444;line-height:1.5;margin:-12px 0 24px}#account-error{color:#921d10;line-height:1.5}.help a{color:#111;text-underline-offset:4px}#password-fields{margin-top:12px}
/* Supplied CounterSwipe artwork anchors the sign-in and account pages. */
.intro { background:#080b06; gap:32px; padding:clamp(24px,4vw,64px); }
.intro .brand { display:block; width:100%; max-width:640px; margin:auto; }
.intro .brand img { display:block; width:100%; height:auto; border-radius:16px; }
.intro h1 { font-size:clamp(32px,3.4vw,52px); letter-spacing:-1.5px; }
.intro .eyebrow { color:#39ff14; }
.intro .intro-copy { font-size:17px; }
#sign-in,.account-primary { background:#39ff14; }
@media(max-width:720px) { .intro { padding:16px 24px; }.intro .brand { max-width:270px; height:110px; overflow:hidden; border-radius:8px; }.intro .brand img { height:110px; object-fit:cover; object-position:50% 65%; }.login-panel { padding-top:32px; } }
.intro .brand { background:transparent; border-radius:16px; overflow:hidden; }
@media(max-width:720px) {
 .intro .brand { height:auto; }
 .intro .brand img { height:auto; object-fit:contain; object-position:center; }
}
/* Explicit text color also overrides mobile browser button defaults. */
#sign-in,#sign-in:hover,#sign-in:active,.account-primary,.account-primary:hover {
 color:#000;
 -webkit-text-fill-color:#000;
 border:2px solid #000;
}
#sign-in span,.account-primary span { color:inherit; }
