/* Cursor*10-style: white paper, thin black ink, generous space. */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;700&family=Share+Tech+Mono&display=swap");

:root {
  --paper: #ffffff;
  --ink: #141416;
  --soft: #6b6b72;
  --line: #141416;
  --faint: #e8e8ea;
  --accent: #f2c94c;
  --danger: #c0392b;
}

* { box-sizing: border-box; }

html, body {
  margin: 0;
  height: 100%;
  background: var(--paper);
  color: var(--ink);
  font-family: "Noto Sans KR", system-ui, sans-serif;
  font-weight: 300;
}

.mono { font-family: "Share Tech Mono", ui-monospace, monospace; letter-spacing: 0.04em; }

h1, h2 { font-weight: 300; margin: 0; }

button, input, select {
  font: inherit;
  color: var(--ink);
  background: var(--paper);
  border: 1px solid var(--line);
  border-radius: 0;
  padding: 0.7em 1em;
}

button { cursor: pointer; letter-spacing: 0.06em; }
button:hover:not(:disabled) { background: var(--ink); color: var(--paper); }
button:disabled { opacity: 0.35; cursor: default; }
button.primary { border-width: 2px; font-weight: 400; }

input:focus, select:focus, button:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

.error { color: var(--danger); min-height: 1.5em; }
.hidden { display: none !important; }
