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;
}
}