.page { max-width: 960px; margin: 0 auto; padding: 2.5rem 1.5rem 3rem; } .card { background: #ffffff; border: 1px solid #e2e8f0; border-radius: 16px; padding: 1.5rem; box-shadow: 0 18px 60px -30px rgba(15, 23, 42, 0.3); } .card + .card { margin-top: 1.25rem; } .intro { text-align: left; } .eyebrow { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.75rem; color: #475569; margin: 0 0 0.35rem; } .lede { color: #475569; margin: 0.5rem 0 0; } .header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; } .pill { display: inline-flex; align-items: center; gap: 0.4rem; padding: 0.3rem 0.7rem; border-radius: 999px; background: #eef2ff; color: #312e81; border: 1px solid #c7d2fe; font-weight: 600; } .muted { color: #475569; margin: 0.35rem 0 0; } .query-form { margin: 1rem 0; display: grid; gap: 0.35rem; } .label { font-weight: 600; color: #0f172a; } .field-row { display: flex; gap: 0.5rem; align-items: center; } .field-row input { flex: 1; padding: 0.65rem 0.75rem; border: 1px solid #cbd5e1; border-radius: 12px; font-size: 1rem; color: #0f172a; background: #f8fafc; } .field-row input:focus { outline: none; border-color: #6366f1; box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15); } .field-row button { padding: 0.65rem 0.9rem; border: 1px solid #312e81; background: linear-gradient(135deg, #4338ca, #312e81); color: #fff; border-radius: 12px; font-weight: 700; cursor: pointer; transition: transform 150ms ease, box-shadow 150ms ease; } .field-row button:hover { transform: translateY(-1px); box-shadow: 0 8px 24px -10px rgba(49, 46, 129, 0.6); } .field-row button:active { transform: translateY(0); box-shadow: none; } .country { margin-top: 1rem; } .country__headline { display: flex; align-items: center; gap: 0.8rem; margin-bottom: 1rem; } .country h3 { margin: 0.2rem 0 0; } .emoji { font-size: 2rem; } .grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 1rem; } dt { font-size: 0.9rem; color: #475569; margin-bottom: 0.2rem; } dd { margin: 0; font-weight: 600; color: #0f172a; } .error { color: #b91c1c; background: #fef2f2; border: 1px solid #fecdd3; border-radius: 12px; padding: 0.75rem 1rem; margin: 0.75rem 0 0; }