Vorlage:Hauptseite/style.css: Unterschied zwischen den Versionen
Erscheinungsbild
RaWen (Diskussion | Beiträge) Anpassungen für den Dark-Mode |
RaWen (Diskussion | Beiträge) K Weitere Anpassungen an Vector2022 Markierung: Zurückgesetzt |
||
| Zeile 1: | Zeile 1: | ||
/* | /* ============================================================================= | ||
HammWiki Startseite CSS - Optimiert für MediaWiki Vector2022 | |||
Responsive Design mit Dark Mode Support | |||
============================================================================= */ | |||
/* ----------------------------------------------------------------------------- | |||
HEADER BEREICH | |||
----------------------------------------------------------------------------- */ | |||
.wiki-header { | .wiki-header { | ||
margin-bottom: 1.25rem; | margin-bottom: 1.25rem; | ||
| Zeile 11: | Zeile 18: | ||
} | } | ||
/* Dark Mode */ | /* Header Dark Mode - Invertierung für bessere Sichtbarkeit */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .wiki-header img { | html.skin-theme-clientpref-night .wiki-header img { | ||
| Zeile 24: | Zeile 31: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
GRID LAYOUT - Responsive 2-Spalten Layout | |||
----------------------------------------------------------------------------- */ | |||
.content-grid { | .content-grid { | ||
display: grid; | display: grid; | ||
grid-template-columns: repeat(2, 1fr); | grid-template-columns: repeat(2, 1fr); | ||
gap: 1.25rem; | gap: 1.25rem; | ||
max-width: | max-width: 100%; /* Respektiert Container-Grenzen statt Viewport */ | ||
width: 100%; | |||
overflow: visible; | overflow: visible; | ||
box-sizing: border-box; | box-sizing: border-box; | ||
padding: 0.5rem; | padding: 0.5rem; | ||
margin: 0 auto; /* Zentrierung im verfügbaren Raum */ | |||
position: relative; | |||
z-index: 0; /* Stacking Context für Hover-Effekte */ | |||
} | } | ||
.content-grid > * { | .content-grid > * { | ||
min-width: 0; | min-width: 0; /* Verhindert Grid-Overflow */ | ||
overflow-wrap: break-word; | overflow-wrap: break-word; | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
CONTENT BOXEN - Hauptcontainer für Inhaltsblöcke | |||
----------------------------------------------------------------------------- */ | |||
.content-box { | .content-box { | ||
position: relative; | position: relative; | ||
| Zeile 50: | Zeile 65: | ||
} | } | ||
/* Hover-Effekt nur auf größeren Bildschirmen */ | |||
@media screen and (min-width: 769px) { | @media screen and (min-width: 769px) { | ||
.content-box:hover { | .content-box:hover { | ||
| Zeile 59: | Zeile 75: | ||
} | } | ||
/* Dark | /* Hover-Effekt Dark Mode */ | ||
@media screen and (min-width: 769px) { | @media screen and (min-width: 769px) { | ||
html.skin-theme-clientpref-night .content-box:hover { | html.skin-theme-clientpref-night .content-box:hover { | ||
| Zeile 72: | Zeile 88: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
BOX HEADER - Überschriften der Content-Boxen | |||
----------------------------------------------------------------------------- */ | |||
.box-header { | .box-header { | ||
position: relative; | position: relative; | ||
| Zeile 81: | Zeile 99: | ||
border-radius: 6px 6px 0 0; | border-radius: 6px 6px 0 0; | ||
margin: 0; | margin: 0; | ||
margin-bottom: -5px; | margin-bottom: -5px; /* Überlappung mit Content-Bereich */ | ||
} | |||
.box-header h2 { | |||
font-size: 0.9rem; | |||
margin: -2px 0 0 0; | |||
padding: 0; | |||
font-weight: bold; | |||
font-family: sans-serif; | |||
border-bottom: 0; | |||
} | } | ||
/* | /* Header Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .box-header { | html.skin-theme-clientpref-night .box-header { | ||
background: rgba(255,255,255,0.1); | background: rgba(255,255,255,0.1); | ||
} | |||
html.skin-theme-clientpref-night .box-header h2 { | |||
color: #f0f0f0; | |||
} | } | ||
} | } | ||
| Zeile 94: | Zeile 125: | ||
html.skin-theme-clientpref-os .box-header { | html.skin-theme-clientpref-os .box-header { | ||
background: rgba(255,255,255,0.1); | background: rgba(255,255,255,0.1); | ||
} | |||
html.skin-theme-clientpref-os .box-header h2 { | |||
color: #f0f0f0; | |||
} | } | ||
} | } | ||
/* Content- | /* ----------------------------------------------------------------------------- | ||
BOX CONTENT - Hauptinhalt der Content-Boxen | |||
----------------------------------------------------------------------------- */ | |||
.box-content { | .box-content { | ||
background: #fff; | background: #fff; | ||
| Zeile 107: | Zeile 144: | ||
} | } | ||
/* Abstand-Optimierung für letzte Paragraphen */ | |||
.box-content p:last-child { | .box-content p:last-child { | ||
margin-bottom: 0; | margin-bottom: 0; | ||
| Zeile 119: | Zeile 157: | ||
} | } | ||
/* Content Dark | /* Content Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .box-content { | html.skin-theme-clientpref-night .box-content { | ||
| Zeile 138: | Zeile 176: | ||
} | } | ||
/* ----------------------------------------------------------------------------- | |||
BILDER - Styling für verschiedene Bildtypen | |||
----------------------------------------------------------------------------- */ | |||
/* Standard-Bilder in Content-Boxen */ | |||
.box-content:not(.photos) img { | .box-content:not(.photos) img { | ||
border-radius: 10px; | border-radius: 10px; | ||
| Zeile 146: | Zeile 188: | ||
} | } | ||
/* Bilder innerhalb von Text */ | |||
.within img { | .within img { | ||
margin-top: 0 !important; | margin-top: 0 !important; | ||
} | } | ||
/* Spezielle Behandlung für Förderverein-Logo */ | |||
.foerderverein img { | .foerderverein img { | ||
width: auto !important; | width: auto !important; | ||
| Zeile 160: | Zeile 204: | ||
} | } | ||
/* Foto-Galerien */ | |||
/* | |||
.photos { | .photos { | ||
position: relative; | position: relative; | ||
| Zeile 200: | Zeile 222: | ||
} | } | ||
/* | /* Foto-Schatten Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .photos img { | html.skin-theme-clientpref-night .photos img { | ||
| Zeile 220: | Zeile 242: | ||
} | } | ||
/* Stimmen | /* ----------------------------------------------------------------------------- | ||
TESTIMONIALS - Zitate und Stimmen | |||
----------------------------------------------------------------------------- */ | |||
.testimonial { | .testimonial { | ||
margin: 1.5rem 0; | margin: 1.5rem 0; | ||
| Zeile 235: | Zeile 259: | ||
margin: 0 !important; | margin: 0 !important; | ||
height: auto !important; | height: auto !important; | ||
} | } | ||
| Zeile 271: | Zeile 265: | ||
} | } | ||
/* | /* Testimonial Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .testimonial .author small { | html.skin-theme-clientpref-night .testimonial .author small { | ||
| Zeile 294: | Zeile 288: | ||
} | } | ||
/* Zitat Dark | /* Zitat Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .testimonial .quote { | html.skin-theme-clientpref-night .testimonial .quote { | ||
| Zeile 309: | Zeile 303: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
. | MARKER UND HIGHLIGHTS - Hervorhebungen | ||
text- | ----------------------------------------------------------------------------- */ | ||
.author, .highlight-marker { | |||
margin: | margin: 0 0 0.5rem 0; | ||
line-height: 1.7; | |||
border-bottom: 2px solid #80dbfb; | |||
} | |||
.author a:hover, .highlight-marker a:hover { | |||
text-decoration: none; | |||
color: #f97547; | |||
} | |||
.warning-marker { | |||
margin: 0 0 0.5rem 0; | |||
line-height: 1.7; | |||
border-bottom: 2px solid #ff0f0f; | |||
} | |||
/* Warnung Dark Mode */ | |||
@media screen { | |||
html.skin-theme-clientpref-night .warning-marker { | |||
border-bottom-color: #ff6b6b; | |||
} | |||
} | } | ||
. | @media screen and (prefers-color-scheme: dark) { | ||
html.skin-theme-clientpref-os .warning-marker { | |||
border-bottom-color: #ff6b6b; | |||
} | |||
} | } | ||
/* Nächster | /* ----------------------------------------------------------------------------- | ||
STAMMTISCH - Nächster Termin Box | |||
----------------------------------------------------------------------------- */ | |||
.next-meeting { | .next-meeting { | ||
display: inline-block; | display: inline-block; | ||
| Zeile 334: | Zeile 352: | ||
} | } | ||
/* Stammtisch Dark | /* Stammtisch Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .next-meeting { | html.skin-theme-clientpref-night .next-meeting { | ||
| Zeile 347: | Zeile 365: | ||
box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px; | box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px; | ||
} | } | ||
} | |||
/* ----------------------------------------------------------------------------- | |||
BUTTONS UND LINKS - Interaktive Elemente | |||
----------------------------------------------------------------------------- */ | |||
.more-link { | |||
text-align: right; | |||
width: 100%; | |||
margin: 1rem 0 0; | |||
} | |||
.photo-content .more-link { | |||
width: 85%; | |||
} | } | ||
| Zeile 369: | Zeile 400: | ||
} | } | ||
/* | .more-link a:hover { | ||
background-color: #f0f0f0; | |||
border-color: #dadce0; | |||
box-shadow: 0 1px 4px rgba(128,128,128,0.5); | |||
text-decoration: none; | |||
} | |||
/* Button Dark Mode */ | |||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .more-link a { | html.skin-theme-clientpref-night .more-link a { | ||
| Zeile 376: | Zeile 414: | ||
color: #6bb6ff; | color: #6bb6ff; | ||
box-shadow: 0 0 3px rgba(0,0,0,0.3); | box-shadow: 0 0 3px rgba(0,0,0,0.3); | ||
} | |||
html.skin-theme-clientpref-night .more-link a:hover { | |||
background-color: #3a3a3a; | |||
border-color: #505050; | |||
box-shadow: 0 1px 4px rgba(0,0,0,0.4); | |||
} | } | ||
} | } | ||
| Zeile 386: | Zeile 430: | ||
box-shadow: 0 0 3px rgba(0,0,0,0.3); | box-shadow: 0 0 3px rgba(0,0,0,0.3); | ||
} | } | ||
html.skin-theme-clientpref-os .more-link a:hover { | html.skin-theme-clientpref-os .more-link a:hover { | ||
background-color: #3a3a3a; | background-color: #3a3a3a; | ||
| Zeile 412: | Zeile 438: | ||
} | } | ||
/* ----------------------------------------------------------------------------- | |||
UNTERTITEL UND ZUSATZTEXTE | |||
----------------------------------------------------------------------------- */ | |||
.startpage-subtitle { | .startpage-subtitle { | ||
font-size: 0.8rem !important; | font-size: 0.8rem !important; | ||
| Zeile 418: | Zeile 447: | ||
} | } | ||
/* Dark Mode | /* Untertitel Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night .startpage-subtitle { | html.skin-theme-clientpref-night .startpage-subtitle { | ||
| Zeile 431: | Zeile 460: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
BARRIEREFREIHEIT - Fokus-Indikatoren | |||
----------------------------------------------------------------------------- */ | |||
:focus { | :focus { | ||
outline: 3px solid #0066cc; | outline: 3px solid #0066cc; | ||
| Zeile 437: | Zeile 468: | ||
} | } | ||
/* Dark Mode | /* Focus Dark Mode */ | ||
@media screen { | @media screen { | ||
html.skin-theme-clientpref-night :focus { | html.skin-theme-clientpref-night :focus { | ||
| Zeile 450: | Zeile 481: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
RESPONSIVE DESIGN - Media Queries | |||
----------------------------------------------------------------------------- */ | |||
/* | /* Große Bildschirme - Reduzierter Gap */ | ||
@media screen and (min-width: 1240px) { | @media screen and (min-width: 1240px) { | ||
.content-grid { | .content-grid { | ||
gap: 1rem; | gap: 1rem; | ||
max-width: calc(100% - 1rem); | |||
} | } | ||
} | } | ||
/* Mittlere Bildschirme - Angepasste Paddings */ | |||
@media screen and (max-width: 900px) { | @media screen and (max-width: 900px) { | ||
.box-content { | .box-content { | ||
| Zeile 471: | Zeile 502: | ||
padding: 0 !important; | padding: 0 !important; | ||
} | } | ||
} | } | ||
/* Tablets - Wechsel zu einspaltigem Layout */ | |||
@media screen and (max-width: 768px) { | @media screen and (max-width: 768px) { | ||
.content-grid { | .content-grid { | ||
grid-template-columns: 1fr; | grid-template-columns: 1fr; | ||
max-width: | max-width: 100%; | ||
margin: 0 auto; | margin: 0 auto; | ||
padding: 0.25rem; | |||
} | } | ||
| Zeile 495: | Zeile 527: | ||
} | } | ||
/* Smartphones - Optimierte Darstellung */ | |||
@media screen and (max-width: 480px) { | @media screen and (max-width: 480px) { | ||
/* Artikel-Erstellung Box */ | |||
#create-article-header + .box-content { | #create-article-header + .box-content { | ||
padding-left: 0.6rem; | padding-left: 0.6rem; | ||
padding-right: 0.6rem; | padding-right: 0.6rem; | ||
} | } | ||
/* Button-Optimierungen */ | |||
.cdx-button, | .cdx-button, | ||
input[type="submit"].cdx-button, | input[type="submit"].cdx-button, | ||
| Zeile 507: | Zeile 543: | ||
min-width: 6em; | min-width: 6em; | ||
} | } | ||
/* Input-Feld Optimierungen */ | |||
.cdx-text-input { | .cdx-text-input { | ||
min-width: 0 !important; | min-width: 0 !important; | ||
| Zeile 512: | Zeile 550: | ||
box-sizing: border-box; | box-sizing: border-box; | ||
} | } | ||
.mw-inputbox-centered, | .mw-inputbox-centered, | ||
.mw-inputbox-form-inline { | .mw-inputbox-form-inline { | ||
| Zeile 517: | Zeile 556: | ||
box-sizing: border-box; | box-sizing: border-box; | ||
} | } | ||
.mw-inputbox-createbox { | .mw-inputbox-createbox { | ||
width: 99% !important; | width: 99% !important; | ||
| Zeile 522: | Zeile 562: | ||
box-sizing: border-box; | box-sizing: border-box; | ||
} | } | ||
/* Testimonial-Anpassungen */ | |||
.testimonial { | |||
padding-left: 0.75rem; | padding-left: 0.75rem; | ||
} | } | ||
.testimonial img { | .testimonial img { | ||
margin: 0 0 0.5rem 0.75rem; | margin: 0 0 0.5rem 0.75rem; | ||
} | } | ||
/* Vollbreite Bilder auf kleinen Bildschirmen */ | |||
.box-content:not(.photos) img { | .box-content:not(.photos) img { | ||
width: 100% !important; | width: 100% !important; | ||
| Zeile 533: | Zeile 578: | ||
} | } | ||
/* | /* ----------------------------------------------------------------------------- | ||
PRINT STYLES - Druckoptimierung | |||
----------------------------------------------------------------------------- */ | |||
@media print { | @media print { | ||
.container { | .container { | ||
| Zeile 560: | Zeile 607: | ||
} | } | ||
/* Link-URLs im Druck anzeigen */ | |||
a[href]:after { | a[href]:after { | ||
content: " (" attr(href) ")"; | content: " (" attr(href) ")"; | ||
Version vom 22. August 2025, 22:10 Uhr
/* =============================================================================
HammWiki Startseite CSS - Optimiert für MediaWiki Vector2022
Responsive Design mit Dark Mode Support
============================================================================= */
/* -----------------------------------------------------------------------------
HEADER BEREICH
----------------------------------------------------------------------------- */
.wiki-header {
margin-bottom: 1.25rem;
}
.wiki-header img {
width: 100%;
height: auto;
display: block;
border-radius: 6px;
}
/* Header Dark Mode - Invertierung für bessere Sichtbarkeit */
@media screen {
html.skin-theme-clientpref-night .wiki-header img {
filter: grayscale(1) invert(1);
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .wiki-header img {
filter: grayscale(1) invert(1);
}
}
/* -----------------------------------------------------------------------------
GRID LAYOUT - Responsive 2-Spalten Layout
----------------------------------------------------------------------------- */
.content-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 1.25rem;
max-width: 100%; /* Respektiert Container-Grenzen statt Viewport */
width: 100%;
overflow: visible;
box-sizing: border-box;
padding: 0.5rem;
margin: 0 auto; /* Zentrierung im verfügbaren Raum */
position: relative;
z-index: 0; /* Stacking Context für Hover-Effekte */
}
.content-grid > * {
min-width: 0; /* Verhindert Grid-Overflow */
overflow-wrap: break-word;
}
/* -----------------------------------------------------------------------------
CONTENT BOXEN - Hauptcontainer für Inhaltsblöcke
----------------------------------------------------------------------------- */
.content-box {
position: relative;
display: inline-block;
margin-bottom: 1.5rem;
z-index: 1;
transition: all .3s cubic-bezier(0.165, 0.84, 0.44, 1);
transform-origin: center;
}
/* Hover-Effekt nur auf größeren Bildschirmen */
@media screen and (min-width: 769px) {
.content-box:hover {
transform: scale(1.025);
transition: transform 0.5s ease-in;
border-color: rgba(0,0,0,0.12);
z-index: 2;
}
}
/* Hover-Effekt Dark Mode */
@media screen and (min-width: 769px) {
html.skin-theme-clientpref-night .content-box:hover {
border-color: rgba(255,255,255,0.2);
}
}
@media screen and (min-width: 769px) and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .content-box:hover {
border-color: rgba(255,255,255,0.2);
}
}
/* -----------------------------------------------------------------------------
BOX HEADER - Überschriften der Content-Boxen
----------------------------------------------------------------------------- */
.box-header {
position: relative;
width: max-content;
max-width: 85%;
padding: 0.7rem 0.8rem;
background: rgba(0,0,0,0.08);
border-radius: 6px 6px 0 0;
margin: 0;
margin-bottom: -5px; /* Überlappung mit Content-Bereich */
}
.box-header h2 {
font-size: 0.9rem;
margin: -2px 0 0 0;
padding: 0;
font-weight: bold;
font-family: sans-serif;
border-bottom: 0;
}
/* Header Dark Mode */
@media screen {
html.skin-theme-clientpref-night .box-header {
background: rgba(255,255,255,0.1);
}
html.skin-theme-clientpref-night .box-header h2 {
color: #f0f0f0;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .box-header {
background: rgba(255,255,255,0.1);
}
html.skin-theme-clientpref-os .box-header h2 {
color: #f0f0f0;
}
}
/* -----------------------------------------------------------------------------
BOX CONTENT - Hauptinhalt der Content-Boxen
----------------------------------------------------------------------------- */
.box-content {
background: #fff;
position: relative;
padding: 0.8rem 1.4rem 1rem;
border: 2px solid rgba(0,0,0,0.08);
border-radius: 6px;
box-shadow: 0 0.3rem 0.8rem rgba(51,51,51,0.08);
}
/* Abstand-Optimierung für letzte Paragraphen */
.box-content p:last-child {
margin-bottom: 0;
}
.box-content p:last-of-type {
margin-bottom: 0;
}
.box-content p:last-of-type:not(:last-child) {
margin-bottom: 0.75rem;
}
/* Content Dark Mode */
@media screen {
html.skin-theme-clientpref-night .box-content {
background: #000;
border-color: rgba(255,255,255,0.2);
box-shadow: 0 0.4rem 1.2rem rgba(0,0,0,0.6),
0 0.1rem 0.3rem rgba(0,0,0,0.4);
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .box-content {
background: #000;
border-color: rgba(255,255,255,0.2);
box-shadow: 0 0.4rem 1.2rem rgba(0,0,0,0.6),
0 0.1rem 0.3rem rgba(0,0,0,0.4);
}
}
/* -----------------------------------------------------------------------------
BILDER - Styling für verschiedene Bildtypen
----------------------------------------------------------------------------- */
/* Standard-Bilder in Content-Boxen */
.box-content:not(.photos) img {
border-radius: 10px;
height: auto;
margin: 0.8rem auto 0.4rem auto;
width: 90%;
box-shadow: 0px 4px 16px 0px rgba(0,0,0,0.15);
}
/* Bilder innerhalb von Text */
.within img {
margin-top: 0 !important;
}
/* Spezielle Behandlung für Förderverein-Logo */
.foerderverein img {
width: auto !important;
max-width: none !important;
box-shadow: none !important;
border-radius: 0 !important;
display: inline !important;
margin: 0 !important;
height: auto !important;
}
/* Foto-Galerien */
.photos {
position: relative;
padding: 0;
background: transparent !important;
box-shadow: none !important;
border: none !important;
width: 90%;
}
.photos img {
width: 100%;
height: auto;
display: block;
border-radius: 6px;
box-shadow: 0 0.3rem 0.8rem rgba(51,51,51,0.08);
}
/* Foto-Schatten Dark Mode */
@media screen {
html.skin-theme-clientpref-night .photos img {
box-shadow: 0 0.4rem 1.2rem rgba(0,0,0,0.7),
0 0.1rem 0.4rem rgba(0,0,0,0.5);
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .photos img {
box-shadow: 0 0.4rem 1.2rem rgba(0,0,0,0.7),
0 0.1rem 0.4rem rgba(0,0,0,0.5);
}
}
.photos .more-link {
width: 100%;
margin: 1rem 0 0;
}
/* -----------------------------------------------------------------------------
TESTIMONIALS - Zitate und Stimmen
----------------------------------------------------------------------------- */
.testimonial {
margin: 1.5rem 0;
}
.testimonial img {
float: right;
margin: 0 0 0.5rem 1rem !important;
border-radius: 4px !important;
width: auto !important;
max-width: none !important;
box-shadow: none !important;
display: inline !important;
margin: 0 !important;
height: auto !important;
}
.testimonial .author small {
color: #666;
}
/* Testimonial Dark Mode */
@media screen {
html.skin-theme-clientpref-night .testimonial .author small {
color: #aaa;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .testimonial .author small {
color: #aaa;
}
}
.testimonial .quote {
color: #333;
line-height: 1.5;
font-family: "Linux Libertine", "Georgia", "Times", serif;
border-left: 2px dotted rgba(128,128,128,0.5);
margin: 1.5rem 0 1.5rem 0.8rem;
position: relative;
padding-left: 1rem;
}
/* Zitat Dark Mode */
@media screen {
html.skin-theme-clientpref-night .testimonial .quote {
color: #e0e0e0;
border-left-color: rgba(255,255,255,0.3);
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .testimonial .quote {
color: #e0e0e0;
border-left-color: rgba(255,255,255,0.3);
}
}
/* -----------------------------------------------------------------------------
MARKER UND HIGHLIGHTS - Hervorhebungen
----------------------------------------------------------------------------- */
.author, .highlight-marker {
margin: 0 0 0.5rem 0;
line-height: 1.7;
border-bottom: 2px solid #80dbfb;
}
.author a:hover, .highlight-marker a:hover {
text-decoration: none;
color: #f97547;
}
.warning-marker {
margin: 0 0 0.5rem 0;
line-height: 1.7;
border-bottom: 2px solid #ff0f0f;
}
/* Warnung Dark Mode */
@media screen {
html.skin-theme-clientpref-night .warning-marker {
border-bottom-color: #ff6b6b;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .warning-marker {
border-bottom-color: #ff6b6b;
}
}
/* -----------------------------------------------------------------------------
STAMMTISCH - Nächster Termin Box
----------------------------------------------------------------------------- */
.next-meeting {
display: inline-block;
box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;
padding: 0.5rem 0.8rem;
margin: 0 0 0.8rem 0;
border-radius: 4px;
background: rgba(0,0,0,0.02);
}
.next-meeting p:first-child {
margin-top: 0;
}
/* Stammtisch Dark Mode */
@media screen {
html.skin-theme-clientpref-night .next-meeting {
background: rgba(255,255,255,0.05);
box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .next-meeting {
background: rgba(255,255,255,0.05);
box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 5px;
}
}
/* -----------------------------------------------------------------------------
BUTTONS UND LINKS - Interaktive Elemente
----------------------------------------------------------------------------- */
.more-link {
text-align: right;
width: 100%;
margin: 1rem 0 0;
}
.photo-content .more-link {
width: 85%;
}
.more-link a {
width: max-content;
padding: 0.3rem 0.8rem;
height: max-content;
background-color: #f8f9fa;
border: 1px solid #f8f9fa;
color: #0b0080;
border-radius: 4px;
box-shadow: 0 0 3px rgba(128,128,128,0.5);
text-align: center;
line-height: 22px;
font-size: 0.8rem;
cursor: pointer;
transition: all 0.3s;
display: inline-flex;
user-select: none;
touch-action: manipulation;
white-space: pre;
}
.more-link a:hover {
background-color: #f0f0f0;
border-color: #dadce0;
box-shadow: 0 1px 4px rgba(128,128,128,0.5);
text-decoration: none;
}
/* Button Dark Mode */
@media screen {
html.skin-theme-clientpref-night .more-link a {
background-color: #2a2a2a;
border-color: #404040;
color: #6bb6ff;
box-shadow: 0 0 3px rgba(0,0,0,0.3);
}
html.skin-theme-clientpref-night .more-link a:hover {
background-color: #3a3a3a;
border-color: #505050;
box-shadow: 0 1px 4px rgba(0,0,0,0.4);
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .more-link a {
background-color: #2a2a2a;
border-color: #404040;
color: #6bb6ff;
box-shadow: 0 0 3px rgba(0,0,0,0.3);
}
html.skin-theme-clientpref-os .more-link a:hover {
background-color: #3a3a3a;
border-color: #505050;
box-shadow: 0 1px 4px rgba(0,0,0,0.4);
}
}
/* -----------------------------------------------------------------------------
UNTERTITEL UND ZUSATZTEXTE
----------------------------------------------------------------------------- */
.startpage-subtitle {
font-size: 0.8rem !important;
margin-top: 0.8rem;
color: #555;
}
/* Untertitel Dark Mode */
@media screen {
html.skin-theme-clientpref-night .startpage-subtitle {
color: #aaa;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .startpage-subtitle {
color: #aaa;
}
}
/* -----------------------------------------------------------------------------
BARRIEREFREIHEIT - Fokus-Indikatoren
----------------------------------------------------------------------------- */
:focus {
outline: 3px solid #0066cc;
outline-offset: 2px;
}
/* Focus Dark Mode */
@media screen {
html.skin-theme-clientpref-night :focus {
outline-color: #6bb6ff;
}
}
@media screen and (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os :focus {
outline-color: #6bb6ff;
}
}
/* -----------------------------------------------------------------------------
RESPONSIVE DESIGN - Media Queries
----------------------------------------------------------------------------- */
/* Große Bildschirme - Reduzierter Gap */
@media screen and (min-width: 1240px) {
.content-grid {
gap: 1rem;
max-width: calc(100% - 1rem);
}
}
/* Mittlere Bildschirme - Angepasste Paddings */
@media screen and (max-width: 900px) {
.box-content {
padding: 0.8rem 1.25rem;
}
.photos {
padding: 0 !important;
}
}
/* Tablets - Wechsel zu einspaltigem Layout */
@media screen and (max-width: 768px) {
.content-grid {
grid-template-columns: 1fr;
max-width: 100%;
margin: 0 auto;
padding: 0.25rem;
}
.box-content {
display: block;
width: auto;
}
.box-header {
max-width: 85%;
}
.inner-box .box-header {
max-width: none;
}
}
/* Smartphones - Optimierte Darstellung */
@media screen and (max-width: 480px) {
/* Artikel-Erstellung Box */
#create-article-header + .box-content {
padding-left: 0.6rem;
padding-right: 0.6rem;
}
/* Button-Optimierungen */
.cdx-button,
input[type="submit"].cdx-button,
.mw-inputbox-form-inline input[type="submit"] {
padding-left: 1.2em !important;
padding-right: 1.2em !important;
min-width: 6em;
}
/* Input-Feld Optimierungen */
.cdx-text-input {
min-width: 0 !important;
width: 99% !important;
box-sizing: border-box;
}
.mw-inputbox-centered,
.mw-inputbox-form-inline {
width: 99% !important;
box-sizing: border-box;
}
.mw-inputbox-createbox {
width: 99% !important;
min-width: 0 !important;
box-sizing: border-box;
}
/* Testimonial-Anpassungen */
.testimonial {
padding-left: 0.75rem;
}
.testimonial img {
margin: 0 0 0.5rem 0.75rem;
}
/* Vollbreite Bilder auf kleinen Bildschirmen */
.box-content:not(.photos) img {
width: 100% !important;
}
}
/* -----------------------------------------------------------------------------
PRINT STYLES - Druckoptimierung
----------------------------------------------------------------------------- */
@media print {
.container {
max-width: 100%;
padding: 0;
}
.content-grid {
grid-template-columns: 1fr;
gap: 1rem;
}
.box-header,
.box-content {
box-shadow: none;
}
.box-content {
border: 1px solid #000;
page-break-inside: avoid;
}
.photo-content img {
max-width: 80%;
margin: 0 auto;
}
/* Link-URLs im Druck anzeigen */
a[href]:after {
content: " (" attr(href) ")";
color: #444;
}
}