.fsa-gate-card{border:1px solid #E5E7EB;border-radius:12px;padding:28px 24px;margin:8px 0 32px;background:#FAF9F6;text-align:center}
.fsa-gate-kicker{text-transform:uppercase;color:#1A3558;margin-bottom:8px;font-size:var(--fs-small);font-weight:600;letter-spacing:.08em}
.fsa-gate-card h2{margin:0 0 10px;font-size:var(--fs-h2);font-weight:600;letter-spacing:var(--ls-h2);line-height:var(--lh-h2)}
.fsa-gate-card p{margin:0 auto 14px;max-width:46ch}
.fsa-gate-note{color:#6B7280;font-size:var(--fs-small)}
.fsa-gate-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;align-items:center}
.fsa-gate-btn{display:inline-block;box-sizing:border-box;min-height:0;line-height:20px;padding:14px 28px;font-size:15px;background:#0B1D33;color:#fff!important;border-radius:8px;text-decoration:none;font-weight:600!important}
.fsa-gate-link{min-height:44px;line-height:44px;padding:0 8px}
.fsa-acct{max-width:480px;margin:40px auto 60px;padding:0 20px}
.fsa-acct h1{margin:0 0 8px;font-size:var(--fs-h1);font-weight:600;letter-spacing:var(--ls-h1);line-height:var(--lh-h1)}
.fsa-acct form{display:grid;gap:14px;margin-top:18px}
.fsa-acct form[hidden]{display:none}
.fsa-acct label{display:grid;gap:6px;font-size:var(--fs-small);font-weight:600}
.fsa-acct input[type=email],.fsa-acct input[type=password],.fsa-acct input[type=text],.fsa-acct input[type=url]{min-height:44px;padding:8px 12px;border:1px solid #6B7280;border-radius:8px;font-size:var(--fs-body);font-weight:400}
.fsa-acct .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400}
.fsa-acct .chk input{width:22px;height:22px;margin-top:2px;flex:0 0 auto}
.fsa-acct button{min-height:44px;background:#0B1D33;color:#fff;border:0;border-radius:8px;cursor:pointer;font-size:var(--fs-body);font-weight:600}
.fsa-acct .tabs{display:flex;gap:8px;margin-top:14px}
.fsa-acct .tabs a{flex:1;text-align:center;min-height:44px;line-height:44px;border:1px solid #6B7280;border-radius:8px;text-decoration:none}
.fsa-acct .tabs a[aria-current=page]{background:#0B1D33;color:#fff}
.fsa-acct .msg{min-height:1.2em;font-size:var(--fs-small)}
.fsa-acct .small{color:#6B7280;font-size:var(--fs-small)}
html.fsa-locked .fsa-gated-rest{display:none!important}
html body .fsa-gate-card a.fsa-gate-btn,html body .fsa-gate-card a.fsa-gate-btn:visited{color:#fff!important;-webkit-text-fill-color:#fff}
html body .fsa-acct .tabs a{color:#0B1D33!important}
html body .fsa-acct .tabs a[aria-current=page]{color:#fff!important}
/* QA v1 FIX 3/4: explicit colours, >=4.5:1 on #FAF9F6 / #fff */
html body .fsa-gate-card h2{color:#0B1D33!important}
html body .fsa-gate-card p,html body .fsa-gate-card .fsa-gate-note{color:#1A1A1A!important}
html body .fsa-gate-card .fsa-gate-kicker{color:#1A3558!important}
html body .fsa-gate-card a.fsa-gate-link,html body .fsa-gate-card a.fsa-gate-link:visited{color:#1A3558!important;text-decoration:underline}
html body .fsa-acct a,html body .fsa-acct a:visited{color:#1A3558!important}
html body .fsa-acct .small{color:#6B7280!important}
/* static paywall wrapper must not change layout (grid/flow) when unlocked */
.fsa-paywall{display:contents}
/* QA v3 fix 5: main's gold button on the gate + account forms (CSS only) */
html body .fsa-gate-card a.fsa-gate-btn,html body .fsa-gate-card a.fsa-gate-btn:visited,html body .fsa-acct button{background:#D4A843!important;color:#0B1D33!important;-webkit-text-fill-color:#0B1D33}
html body .fsa-gate-card a.fsa-gate-btn:hover,html body .fsa-acct button:hover{background:#E8C566!important}
.fsa-gate-card{background:#FFFFFF}
html body .fsa-gate-card a.fsa-gate-btn{line-height:20px!important;box-sizing:border-box;min-height:0;padding:14px 28px;font-size:15px;border-radius:8px;display:inline-flex;align-items:center}
