:root { color-scheme: light; }
* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.5;
}
.container { max-width: 980px; margin: 0 auto; padding: 16px; }
.nav { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.brand { font-weight: 700; text-decoration: none; color: inherit; }
.nav-links { display: flex; gap: 12px; flex-wrap: wrap; }
.nav a { text-decoration: none; color: inherit; opacity: 0.9; }
.nav a:hover { opacity: 1; text-decoration: underline; }

h1 { margin: 18px 0 6px; }
.subtle { opacity: 0.75; margin-top: 0; }

.card {
  border: 1px solid rgba(0,0,0,0.12);
  border-radius: 14px;
  padding: 16px;
  margin: 14px 0;
  background: #fff;
}
.grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
label { display: grid; gap: 6px; font-weight: 600; }
input {
  font: inherit;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,0.2);
}
.actions { display: flex; gap: 10px; margin-top: 12px; }
button {
  font: inherit;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(0,0,0,0.2);
  background: #f3f3f3;
  cursor: pointer;
}
button.secondary { opacity: 0.85; }
button:hover { filter: brightness(0.98); }

.results {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.result { border: 1px dashed rgba(0,0,0,0.18); border-radius: 12px; padding: 12px; }
.result .label { opacity: 0.75; font-size: 0.95rem; }
.result .value { font-size: 1.4rem; font-weight: 800; margin-top: 4px; }

.footer { padding-bottom: 40px; }

@media (max-width: 720px) {
  .grid { grid-template-columns: 1fr; }
  .results { grid-template-columns: 1fr; }
}
