/* M2-5 최소 시연 화면 — 데모용 간결한 스타일 */
* { box-sizing: border-box; }
body {
  font-family: system-ui, -apple-system, sans-serif;
  max-width: 860px; margin: 0 auto; padding: 16px; color: #1c1c1e;
}
h1 { margin: 0 0 4px; font-size: 1.5rem; }
h2 { font-size: 1.1rem; margin: 20px 0 8px; }
h3 { font-size: 1rem; margin: 12px 0 6px; }
.banner {
  background: #fff3cd; border: 1px solid #ffe08a; border-radius: 8px;
  padding: 8px 12px; font-size: 0.85rem; color: #664d03;
}
.muted { color: #6c757d; font-size: 0.85rem; }
.card {
  border: 1px solid #e0e0e4; border-radius: 10px; padding: 10px 14px;
  margin: 8px 0; background: #fff;
}
.badge {
  display: inline-block; padding: 1px 8px; border-radius: 999px;
  background: #eef2ff; color: #3b49df; font-size: 0.78rem;
}
button {
  border: 1px solid #3b49df; background: #3b49df; color: #fff;
  border-radius: 7px; padding: 4px 12px; font-size: 0.85rem; cursor: pointer;
}
button.detail-btn { background: #fff; color: #3b49df; }
form label { display: block; margin: 8px 0; }
input { padding: 6px 8px; border: 1px solid #ccc; border-radius: 6px; }
.error { color: #c1121f; }
.dl-result.ok { color: #147d32; }
.dl-result.error { color: #c1121f; }
table { border-collapse: collapse; margin-top: 6px; font-size: 0.82rem; }
th, td { border: 1px solid #e0e0e4; padding: 3px 10px; text-align: left; }
