/* Shared by the door (door.css) and the portal (style.css): the monochrome
   palette, the type, and the page basics. */
:root {
  --bg: #f4f4f2;
  --ink: #111111;
  --ink-muted: #6b6b6b;
  --rule: rgba(0, 0, 0, 0.1);           /* hairlines */
  --rule-strong: rgba(0, 0, 0, 0.2);    /* outlines on pills and fields */
  --wash: rgba(0, 0, 0, 0.035);         /* the faintest fill, for hover and drop targets */
  --line: rgba(17, 17, 17, 0.38);       /* the door's waves; read by waves.js */
  --accent: #0098d6;
  --red: #d93d42;
  --green: #2a9d5c;
  --gutter: clamp(16px, 4vw, 48px);
  --display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Segoe UI", system-ui, sans-serif;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #111111;
    --ink: #e8e8e8;
    --ink-muted: #8a8a8a;
    --rule: rgba(255, 255, 255, 0.09);
    --rule-strong: rgba(255, 255, 255, 0.18);
    --wash: rgba(255, 255, 255, 0.04);
    --line: rgba(204, 204, 204, 0.5);
    --accent: #1fa9e6;
    --red: #ff6b6f;
    --green: #5ccf8a;
  }
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg); color: var(--ink);
  font: 15px/1.45 -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Segoe UI", system-ui, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
