:root { font-family: Arial, sans-serif; color: #1f2937; background: #f6f7fb; }
* { box-sizing: border-box; }
body { margin: 0; }
.container { max-width: 760px; margin: 0 auto; padding: 1rem; }
.topbar { display: flex; flex-direction: column; gap: 0.5rem; margin-bottom: 1rem; }
.topbar a { text-decoration: none; }
nav { display: flex; gap: 1rem; flex-wrap: wrap; }
.card { background: #fff; border-radius: 12px; padding: 1rem; margin-bottom: 1rem; box-shadow: 0 2px 8px rgba(0,0,0,.06); }
blockquote { font-size: 1.2rem; line-height: 1.5; border-left: 4px solid #7c3aed; padding-left: 0.75rem; margin: 1rem 0; }
textarea, input, button { width: 100%; margin-top: .5rem; padding: .65rem; border-radius: 8px; border: 1px solid #d1d5db; }
button, .btn { background: #4f46e5; color: #fff; border: none; text-align: center; display: inline-block; text-decoration: none; }
.actions-row { display: flex; gap: .5rem; flex-wrap: wrap; margin-top: .5rem; }
.actions-row > * { flex: 1; min-width: 180px; }
.secondary-btn { background: #6b7280; }
.danger-btn { background: #b91c1c; }
.danger-link { color: #b91c1c; font-weight: bold; }
.danger-card { border: 2px solid #fecaca; }
.danger-text { color: #991b1b; font-weight: bold; }
.alert-danger { background: #fee2e2; color: #991b1b; }
.badge { display: inline-block; padding: .3rem .6rem; border-radius: 999px; background: #dcfce7; }
.alert { background: #fef9c3; padding: .6rem; border-radius: 8px; }
.ok { color: #15803d; font-weight: bold; }
.inline-form { display: flex; gap: .5rem; flex-wrap: wrap; }
.inline-form input { flex: 1; min-width: 180px; }
.grid-form { display: grid; gap: .5rem; }
table { width: 100%; border-collapse: collapse; }
th, td { border-bottom: 1px solid #e5e7eb; padding: .5rem; text-align: left; font-size: .9rem; }
.print-card { text-align: center; }
.print-card img { width: min(280px, 100%); }
.small { font-size: .8rem; color: #6b7280; }
@media (min-width: 640px) {
  .topbar { flex-direction: row; justify-content: space-between; align-items: center; }
}

.clues-list { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: .75rem; }
.clues-list li { border: 1px solid #e5e7eb; border-radius: 10px; padding: .75rem; }
.clue-edit-form h3 { margin: 0; font-size: 1rem; }
.clue-edit-form a { font-size: .85rem; margin-left: .35rem; }
