:root {
  color-scheme: light;
  --bg:#FFFFFF;
  --text:#111111;
  --muted:#777777;
  --line:#D9D9D9;
  --line-hover:#BEBEBE;
  --button:#FFFFFF;
  --button-hover:#F7F7F7;
  --button-active:#F0F0F0;
  --disabled:#A0A0A0;
}
html[data-theme="dark"] {
  color-scheme: dark;
  --bg:#0A0A0A;
  --text:#FFFFFF;
  --muted:#B3B3B3;
  --line:#2A2A2A;
  --line-hover:#3A3A3A;
  --button:#141414;
  --button-hover:#242424;
  --button-active:#2F2F2F;
  --disabled:#808080;
}
*{box-sizing:border-box}
html,body{width:100%;min-height:100%}
body{margin:0;min-height:100dvh;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,a{font:inherit}
.shell{position:relative;min-height:100dvh;display:grid;place-items:center;padding:48px 20px;background:var(--bg)}
.header-controls{position:fixed;top:20px;right:22px;display:inline-flex;align-items:center;gap:8px;z-index:1}
.theme-toggle{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--text);font:inherit;cursor:pointer;white-space:nowrap}
.theme-toggle span{color:var(--text);font-size:.95rem}
.theme-toggle strong{font-size:.78rem}
.theme-toggle:hover{background:var(--button-hover);border-color:var(--line-hover)}
.language-control{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:5px;border:1px solid var(--line);border-radius:999px;background:transparent;white-space:nowrap}
.language-link{height:24px;min-width:30px;display:grid;place-items:center;padding:3px 7px;border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:600;line-height:1;text-decoration:none}
.language-link:hover{color:var(--text);background:var(--button-hover)}
.language-link.is-active{color:var(--text);background:var(--button-active)}
.auth{width:min(100%,384px);text-align:center}
.brand-lockup{width:218.5px;height:73.6px;margin:0 auto 30px;overflow:hidden;background:var(--bg)}
.brand-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center;background:var(--bg)}
.brand-image-dark{display:none;background:#0A0A0A}
html[data-theme="dark"] .brand-image-light{display:none}
html[data-theme="dark"] .brand-image-dark{display:block}
html[data-theme="dark"] .brand-lockup{background:#0A0A0A}
h1{margin:0;font-family:"Segoe UI Variable Display","Segoe UI",Inter,ui-sans-serif,sans-serif;font-size:27px;line-height:1.2;letter-spacing:-.012em;font-weight:600}
.intro{margin:10px 0 28px;color:var(--muted);font-size:14px;line-height:1.45}
.providers{display:grid;gap:10px}
.provider{height:48px;display:grid;grid-template-columns:24px 1fr 24px;align-items:center;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--button);color:var(--text);text-decoration:none;font-size:14px;font-weight:550;text-align:center;transition:background-color 120ms ease,border-color 120ms ease}
.provider::after{content:"";width:24px;height:1px}
.provider:hover{background:var(--button-hover);border-color:var(--line-hover)}
.provider:active{background:var(--button-active)}
.provider-logo{display:block;justify-self:start;width:20px;height:20px;overflow:visible}
.google-logo{width:19px;height:19px}
.microsoft-logo{width:18px;height:18px}
.github-logo{width:20px;height:20px;color:var(--text)}
.provider[aria-disabled="true"]{color:var(--disabled);pointer-events:none}
.language-link:focus-visible,.theme-toggle:focus-visible,.provider:focus-visible,.subscription-link:focus-visible{outline:2px solid var(--text);outline-offset:2px}
.notice{max-width:350px;margin:22px auto 0;color:var(--muted);font-size:11px;line-height:1.55}
.subscription-link,.subscription-link:visited{color:var(--text)}
@media (max-width:560px){.shell{padding:72px 18px 32px}.header-controls{top:14px;right:14px;gap:8px}.theme-toggle{width:36px;justify-content:center;padding:5px}.theme-toggle strong{display:none}.auth{width:min(100%,360px)}.brand-lockup{width:197.8px;height:66.7px;margin-bottom:24px}h1{font-size:25px}.intro{margin-bottom:24px}.provider{height:48px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important}}
