2026-03-29 15:02:05 +02:00

193 lines
4.2 KiB
CSS
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* ===== RESPONSIVE DESIGN ===== */
/* Large desktop screens (≥ 1400px) */
@media (min-width: 1400px) {
.blog-container,
.editor-container,
.post-container {
max-width: 1400px;
}
.post-card {
transition: transform 0.2s;
}
.post-card:hover {
transform: translateY(-6px);
}
}
/* Tablet landscape and small desktops (768px – 1399px) */
@media (max-width: 1399px) and (min-width: 768px) {
.sidebar {
width: 280px;
}
.blog-container,
.editor-container,
.post-container {
padding: 0 var(--size-4);
}
.posts-grid {
grid-template-columns: repeat(2, 1fr);
gap: var(--size-5);
}
}
/* Tablet portrait (≤ 768px) */
@media (max-width: 768px) {
/* General spacing */
.blog-container,
.editor-container,
.post-container {
margin: var(--size-4) auto;
padding: 0 var(--size-3);
}
.post-card,
.editor-form,
.post-form {
padding: var(--size-4);
}
.post-title {
font-size: var(--font-size-5);
}
/* Blog list – single column */
.posts-grid {
grid-template-columns: 1fr;
gap: var(--size-4);
}
.post-card-image {
height: 180px;
}
/* Header stacking */
.site-header .container {
flex-direction: column;
gap: var(--size-3);
}
.site-header .container > div {
justify-content: center;
flex-wrap: wrap;
}
.filter-tabs {
order: 2;
margin-top: var(--size-2);
}
.site-nav {
order: 1;
}
.user-menu {
order: 3;
margin-left: 0;
}
/* Journey edit page – markers stack */
.marker-card {
padding: var(--size-3);
}
.marker-header h4 {
font-size: var(--font-size-2);
}
/* Buttons – full width on mobile for better touch */
.button-group {
flex-direction: column;
}
.button-group .btn,
.button-group a.btn {
width: 100%;
justify-content: center;
}
/* Map page adjustments */
.sidebar {
position: fixed;
top: 0;
left: 0;
height: 100dvh;
width: 85%;
max-width: 300px;
transform: translateX(-100%);
transition: transform 0.3s;
box-shadow: var(--shadow-5);
overflow-y: auto;
-webkit-overflow-scrolling: touch;
z-index: 10;
}
.sidebar:not(.collapsed) {
transform: translateX(0);
}
/* Map controls */
.map-controls {
position: absolute;
top: var(--size-4);
right: var(--size-4);
display: flex;
flex-direction: column;
gap: var(--size-2);
z-index: 400;
}
.mode-indicator {
top: var(--size-4);
left: var(--size-4);
font-size: var(--font-size-0);
padding: var(--size-1) var(--size-2);
}
/* Blog post – chapters */
.chapter {
padding-left: var(--size-3);
margin-bottom: var(--size-4);
}
.chapter-header {
flex-direction: column;
align-items: flex-start;
gap: var(--size-1);
}
.chapter-header h3 {
font-size: var(--font-size-3);
}
/* Comments */
.comment-meta {
font-size: var(--font-size-0);
flex-wrap: wrap;
}
.delete-comment {
margin-left: 0;
margin-top: var(--size-1);
display: inline-block;
}
/* Login page */
.login-container {
width: 90%;
padding: var(--size-4);
margin: var(--size-4);
}
}
/* Extra small devices (≤ 480px) */
@media (max-width: 480px) {
.post-title {
font-size: var(--font-size-4);
}
.post-meta {
font-size: var(--font-size-0);
}
.chapter-header h3 {
font-size: var(--font-size-3);
}
.marker-card .form-group label {
font-size: var(--font-size-0);
}
.btn {
padding: var(--size-2) var(--size-3);
font-size: var(--font-size-1);
}
.toast {
bottom: var(--size-2);
right: var(--size-2);
left: var(--size-2);
width: auto;
text-align: center;
}
}