diff --git a/PROJEKT.md b/PROJEKT.md index 8abc71d..d23395b 100644 --- a/PROJEKT.md +++ b/PROJEKT.md @@ -46,10 +46,17 @@ Maps: Leaflet.js + OpenStreetMap (kostenlos, kein Google-Lock) --- -## Implementierungsstand (aktuell: 2026-04-21, SW by-v279, APP_VER 267) +## Implementierungsstand (aktuell: 2026-04-23, SW by-v312, APP_VER 300) ### Fertig implementiert ✅ +#### Desktop Multi-Column Layout (≥1024px) +- page-container: 680px → 860px global +- Walks: Liste (340px) links + Karte rechts nebeneinander, View-Toggle ausgeblendet +- Forum: Rubriken in 2 Zeilen (CSS Grid, ceil(n/2) Spalten, zentriert, minmax(0,1fr)) +- Welcome: max-width 920px, Feature-Sections 2-spaltig (.welcome-sections grid) +- Hinweis: layout.css lädt vor components.css → für Forum-Tabs ID-Selektor #page-forum nötig (Spezifität) + #### SEO & Auffindbarkeit - `robots.txt`, `llms.txt` (für KI-Crawler), dynamische `sitemap.xml` - Server-gerenderte Seiten (für Google/Crawler): `/info`, `/wiki/rassen`, `/wiki/rasse/{slug}`, `/knigge` @@ -59,7 +66,7 @@ Maps: Leaflet.js + OpenStreetMap (kostenlos, kein Google-Lock) #### Navigation - Bottom-Nav: Karte · Routen · + · Tagebuch · Forum -- Sidebar: Mein Hund (Tagebuch, Gesundheit, Übungen, Pläne) / Entdecken / Soziales / Community / Wissen (collapsible) +- Sidebar: Mein Hund (Tagebuch, Gesundheit, Übungen, Pläne) / Entdecken / Soziales / Community / Wissen (immer sichtbar, nicht mehr collapsible) - Welcome-Seite und Landing-Page auf gleiche 5-Gruppen-Struktur abgestimmt #### Wiki-Rassen diff --git a/backend/static/css/components.css b/backend/static/css/components.css index 958a606..6f71a25 100644 --- a/backend/static/css/components.css +++ b/backend/static/css/components.css @@ -210,6 +210,7 @@ } .by-tabs::-webkit-scrollbar { display: none; } + .by-tab { flex-shrink: 0; padding: var(--space-2) var(--space-3); diff --git a/backend/static/css/layout.css b/backend/static/css/layout.css index 2ba5c74..761cb2f 100644 --- a/backend/static/css/layout.css +++ b/backend/static/css/layout.css @@ -567,6 +567,89 @@ .grid-3 { grid-template-columns: 1fr 1fr; } } +/* ============================================================ + Desktop Multi-Column Layouts (min-width: 1024px) + ============================================================ */ +@media (min-width: 1024px) { + + /* Etwas breiterer Standard-Container auf großen Screens */ + .page-container { max-width: 860px; } + + /* ---------------------------------------------------------- + WELCOME: 2-spaltige Feature-Sections, zentrierter Hero + ---------------------------------------------------------- */ + .welcome-layout { max-width: 920px; } + + .welcome-sections { + display: grid; + grid-template-columns: 1fr 1fr; + gap: var(--space-4); + align-items: start; + } + + .welcome-sections .card { margin-bottom: 0; } + + /* ---------------------------------------------------------- + WALKS: Liste (links) + Karte (rechts) nebeneinander + ---------------------------------------------------------- */ + #page-walks .page-container { max-width: none; } + + .walks-layout { + flex-direction: row; + align-items: stretch; + } + + /* View-Toggle auf Desktop nicht nötig */ + .walks-view-toggle { display: none; } + + /* Beide Panels immer sichtbar */ + #walks-list-view, + #walks-map-view { + display: flex !important; + flex-direction: column; + } + + #walks-list-view { + width: 340px; + flex-shrink: 0; + border-right: 1px solid var(--c-border-light); + } + + #walks-map-view { flex: 1; } + + /* Toolbar-Zeile kompakter da Toggle wegfällt */ + #page-walks .by-toolbar { padding: var(--space-2) var(--space-4); } + + /* ---------------------------------------------------------- + FORUM: Rubriken über volle Breite, Threads darunter + ---------------------------------------------------------- */ + #page-forum .page-container { max-width: 1100px; } + + /* Rubriken auf genau 2 Zeilen verteilen, zentriert + — #page-forum nötig für Spezifität > .by-tabs (components.css lädt später) */ + #page-forum .forum-category-tabs { + display: grid; + grid-template-columns: repeat(var(--forum-tab-cols, 7), minmax(0, 1fr)); + overflow: visible; + gap: var(--space-1); + padding-bottom: var(--space-2); + } + + #page-forum .forum-category-tabs .by-tab { + justify-content: center; + text-align: center; + white-space: nowrap; + } + + /* Suche + Threads volle Breite */ + .forum-main-col { + display: flex; + flex-direction: column; + gap: var(--space-3); + } + +} + /* ============================================================ Phosphor Icons — SVG Sprite ============================================================ */ diff --git a/backend/static/index.html b/backend/static/index.html index 0fad607..c567bfb 100644 --- a/backend/static/index.html +++ b/backend/static/index.html @@ -169,23 +169,18 @@ - -