/* footballapi.org /login, as approved. Loaded after site.css. */
.si { --mono: "JetBrains Mono", ui-monospace, Menlo, monospace; position: relative; overflow: hidden; background: var(--mist); padding: 96px 24px 120px; }
.si::before { content: ""; position: absolute; left: 50%; top: -260px; width: 820px; height: 820px; margin-left: -410px; border-radius: 50%; border: 1px solid rgba(15,59,46,.07); pointer-events: none; }
.si-card { position: relative; max-width: 460px; margin: 0 auto; padding: 44px 40px 34px; border-radius: 14px; background: #fff; border: 1px solid var(--line); box-shadow: 0 40px 80px -50px rgba(15,59,46,.5); text-align: center; }
.si-card > svg { width: 52px; height: 52px; }
.si-card h1 { margin: 14px 0 0; font-size: 11.5px; letter-spacing: .3em; font-weight: 400; color: var(--ink2); }
.si-card .t { display: block; margin: 10px 0 10px; font-size: 32px; font-weight: 200; letter-spacing: -.025em; line-height: 1.12; }
.si-card .s { margin: 0 auto 28px; max-width: 330px; font-size: 14.5px; color: var(--ink2); }
.si-gbox { display: none; justify-content: center; min-height: 44px; }
html.g-ready .si-gbox { display: flex; }
html.g-ready .si-gbtn { display: none; }
.si-gbtn { display: grid; place-items: center; height: 44px; margin: 0 auto; max-width: 320px; border-radius: 999px; box-shadow: inset 0 0 0 1px #dadce0; font: 400 14px Arial, sans-serif; color: #3c4043; }
.si-or { display: block; margin: 14px 0 0; font-size: 13px; color: var(--ink2); }
.si-or a { color: var(--deep); border-bottom: 1px solid rgba(15,59,46,.3); }
.si-wait { display: grid; gap: 6px; margin: 0 auto; max-width: 320px; padding: 14px 16px; border-radius: var(--radius); background: rgba(184,155,94,.12); box-shadow: inset 0 0 0 1px rgba(184,155,94,.45); font-size: 13.5px; color: #6f5a2c; }
.si-wait b { font-weight: 400; color: var(--ink); }
.si-err { display: grid; gap: 4px; margin: 0 auto 18px; max-width: 320px; padding: 12px 16px; border-radius: var(--radius); background: rgba(184,90,70,.08); box-shadow: inset 0 0 0 1px rgba(184,90,70,.35); font-size: 13.5px; color: #8a3b2a; text-align: left; }
.si-new { margin: 28px -40px 0; padding: 20px 40px 0; border-top: 1px solid var(--line); display: grid; gap: 8px; text-align: left; font-size: 13.5px; color: var(--ink2); }
.si-new span { display: grid; grid-template-columns: 18px 1fr; gap: 8px; align-items: baseline; }
.si-new svg { width: 11px; height: 11px; color: var(--deep); }
.si-legal { margin: 22px 0 0; font-size: 12.5px; color: var(--ink2); }
.si-legal a { color: var(--ink); border-bottom: 1px solid var(--line); }

@media (max-width: 600px) {
  .si { padding: 40px 16px 72px; }
  .si-card { padding: 34px 20px 26px; }
  .si-card .t { font-size: 27px; }
  .si-new { margin: 24px -20px 0; padding: 18px 20px 0; }
}
