From 894e67863dbb89a4819e825fcdf7117021082b2a Mon Sep 17 00:00:00 2001 From: Ariel Costas Guerrero Date: Tue, 24 Jun 2025 13:29:50 +0200 Subject: Replace leaflet for maplibre, use react-router in framework mode --- src/frontend/app/root.css | 126 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 src/frontend/app/root.css (limited to 'src/frontend/app/root.css') diff --git a/src/frontend/app/root.css b/src/frontend/app/root.css new file mode 100644 index 0000000..689b48e --- /dev/null +++ b/src/frontend/app/root.css @@ -0,0 +1,126 @@ +:root { + --colour-scheme: light; + --background-color: #ffffff; + --text-color: #333333; + --subtitle-color: #444444; + --border-color: #eeeeee; + --button-background-color: #007bff; + --button-hover-background-color: #0069d9; + --button-disabled-background-color: #cccccc; + --star-color: #ffcc00; + --message-background-color: #f8f9fa; + + font-family: 'Roboto Variable', Roboto, Arial, sans-serif; +} + +[data-theme='dark'] { + --colour-scheme: dark; + --background-color: #121212; + --text-color: #ffffff; + --subtitle-color: #bbbbbb; + --border-color: #444444; + --button-background-color: #1e88e5; + --button-hover-background-color: #1565c0; + --button-disabled-background-color: #555555; + --star-color: #ffcc00; + --message-background-color: #333333; +} + +body { + color-scheme: var(--colour-scheme, light); + + margin: 0; + padding: 0; + box-sizing: border-box; + + background-color: var(--background-color); + + display: flex; + flex-direction: column; + height: 100vh; + width: 100%; + overflow: hidden; +} + +.main-content { + flex: 1; + overflow: auto; +} + +.navigation-bar { + display: flex; + justify-content: space-around; + align-items: center; + padding: 0.5rem 0; + + background-color: var(--background-color); + border-top: 1px solid var(--border-color); +} + +.navigation-bar__link { + flex: 1 0; + display: flex; + flex-direction: column; + align-items: center; + text-decoration: none; + color: var(--text-color); + padding: .25rem 0; + border-radius: .5rem; +} + +.navigation-bar__link svg { + width: 1.75rem; + height: 1.75rem; + margin-bottom: 5px; + fill: none; + stroke-width: 2; +} + +.navigation-bar__link span { + font-size: 14px; + line-height: 1; +} + +.navigation-bar__link.active { + color: var(--button-background-color); +} + +.theme-toggle { + background: none; + border: none; + cursor: pointer; + color: inherit; + display: flex; + align-items: center; + justify-content: center; + padding: 8px; +} + +.theme-toggle:hover { + color: var(--button-hover-background-color); +} + +.page-container { + max-width: 100%; + padding: 0 16px; + background-color: var(--background-color); + color: var(--text-color); +} + +@media (min-width: 768px) { + .page-container { + width: 90%; + max-width: 768px; + margin: 0 auto; + } + + .page-title { + font-size: 2.2rem; + } +} + +@media (min-width: 1024px) { + .page-container { + max-width: 1024px; + } +} -- cgit v1.3