/* Minimal, clean styling (no external CSS) */
:root { --bg:#ffffff; --fg:#111; --muted:#666; --accent:#0b5fff; --border:#e5e7eb; }
* { box-sizing: border-box; }
body { margin:0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, 'Helvetica Neue', Arial, sans-serif; color:var(--fg); background:#fafafa; }
.header { padding: 24px 20px 8px; border-bottom:1px solid var(--border); background:#fff; }
.header h1 { margin:0; font-size: 1.6rem; }
.subtitle { margin:6px 0 12px; color:var(--muted); }
.nav a { margin-right:12px; color:var(--accent); text-decoration:none; font-size:0.95rem; }
.controls { display:flex; flex-wrap:wrap; gap:12px; padding:14px 20px; border-bottom:1px solid var(--border); background:#f8fafc; }
.control { display:flex; flex-direction:column; gap:6px; min-width:160px; }
.control.grow { flex:1 1 240px; }
.control input, .control select, .control button { padding:10px; border:1px solid var(--border); border-radius:10px; font-size:0.95rem; background:#fff; }
.control button { cursor:pointer; }
.buttons { align-items:flex-end; gap:8px; flex-direction:row; }
.summary { padding:10px 20px; color:var(--muted); }
.results { padding: 8px 20px 32px; display:grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap:14px; }
.card { border:1px solid var(--border); border-radius:14px; padding:14px; background:#fff; box-shadow:0 1px 0 rgba(0,0,0,0.03); }
.card .meta { font-size:0.85rem; color:var(--muted); margin-bottom:8px; }
.card .quote { font-size:0.98rem; line-height:1.35; }
.badges { margin-top:8px; display:flex; gap:6px; flex-wrap:wrap; }
.badge { font-size:0.75rem; padding:4px 8px; border:1px solid var(--border); border-radius:999px; background:#fafafa; }
.footer { border-top:1px solid var(--border); padding:14px 20px; color:var(--muted); }
@media (max-width:600px){ .buttons { width:100%; justify-content:space-between; } }
