/* Sign-in gate of docs.rosecape.ca: served without authentication (the
   docs-gate HTTPRoute), so it may only use /_gate, /brand and /fonts. */
@font-face { font-family: 'Hubot Sans'; font-weight: 400; font-display: swap; src: url('/fonts/hubot-sans-400.woff2') format('woff2'); }
@font-face { font-family: 'Hubot Sans'; font-weight: 600; font-display: swap; src: url('/fonts/hubot-sans-600.woff2') format('woff2'); }
:root { --canvas: #f0f2f2; --surface: #fff; --border: #cfd5d7; --muted: #415862; --strong: #072330; --primary: #1278a3; }
@media (prefers-color-scheme: dark) {
  :root { --canvas: #061a24; --surface: #0b2532; --border: #1d3d4c; --muted: #9fb3bc; --strong: #e8eef0; --primary: #4fb3dc; }
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; display: grid; place-items: center; padding: 16px; background: var(--canvas); color: var(--strong); font: 16px/1.6 'Hubot Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
main { width: 100%; max-width: 420px; background: var(--surface); border: 1px solid var(--border); border-radius: 6px; padding: 32px; }
.logo { display: block; height: 21px; margin-bottom: 24px; }
.logo.dark { display: none; }
@media (prefers-color-scheme: dark) { .logo.light { display: none; } .logo.dark { display: block; } }
h1 { font-size: 20px; font-weight: 600; margin: 0 0 8px; }
p { color: var(--muted); margin: 0 0 24px; }
.realms { display: grid; gap: 12px; }
button { font: inherit; text-align: left; cursor: pointer; padding: 12px 16px; border: 1px solid var(--border); border-radius: 4px; background: transparent; color: var(--strong); }
button:hover, button:focus-visible { border-color: var(--primary); outline: none; }
button small { display: block; color: var(--muted); font-size: 13px; }
.note { margin: 24px 0 0; font-size: 13px; }
a { color: var(--primary); }
