diff --git a/templates/base.html b/templates/base.html index 29042f3..301bd32 100644 --- a/templates/base.html +++ b/templates/base.html @@ -47,6 +47,85 @@ padding: 2rem; } + .field-label { + display: block; + font-weight: 600; + margin-bottom: 0.4rem; + } + + .form-control { + width: 100%; + padding: 0.6rem 0.8rem; + font-size: 1rem; + border: 1px solid #cbd5e0; + border-radius: 4px; + } + + .destination-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); + gap: 0.75rem; + } + + .destination-option { + position: relative; + } + + .destination-option input { + position: absolute; + opacity: 0; + inset: 0; + margin: 0; + cursor: pointer; + } + + .destination-option label { + display: block; + min-height: 100%; + padding: 0.95rem 1rem; + border: 1px solid #cbd5e0; + border-radius: 10px; + background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%); + cursor: pointer; + transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease; + } + + .destination-option label strong { + display: block; + color: #0f172a; + font-size: 1rem; + margin-bottom: 0.2rem; + } + + .destination-option label span { + display: block; + color: #475569; + font-size: 0.9rem; + } + + .destination-option input:hover + label { + border-color: #7aa7d9; + box-shadow: 0 4px 12px rgba(0, 83, 159, 0.08); + } + + .destination-option input:focus-visible + label { + border-color: #00539f; + box-shadow: 0 0 0 3px rgba(0, 83, 159, 0.2); + } + + .destination-option input:checked + label { + border-color: #00539f; + background: linear-gradient(180deg, #eef6ff 0%, #dcecff 100%); + box-shadow: 0 8px 20px rgba(0, 83, 159, 0.16); + transform: translateY(-1px); + } + + @media (max-width: 640px) { + .card { + padding: 1.25rem; + } + } + a { color: #00539f; } diff --git a/templates/index.html b/templates/index.html index c01df6f..74583ba 100644 --- a/templates/index.html +++ b/templates/index.html @@ -4,33 +4,41 @@

Plan your journey

- - + +
{% endfor %} - +
-
-
-