Files
Theme.SZUAbsolventenverein/Client/wwwroot/Themes/SZUAbsolventenverein.Theme.Website/Theme.css

331 lines
7.0 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.

/* ===========================
Standard Layout
=========================== */
body {}
/* Login-Button (Mobile + Desktop) */
.app-menu-footer .btn-login,
.app-menu-footer .login-btn,
.app-menu-footer button,
.app-menu-footer a {
background-color: #ffffff !important;
border: 1px solid #ccc !important;
color: #555 !important;
padding: 6px 14px !important;
border-radius: 6px !important;
font-weight: 500 !important;
}
/* Hover-Effekt */
.app-menu-footer .btn-login:hover,
.app-menu-footer .login-btn:hover,
.app-menu-footer button:hover,
.app-menu-footer a:hover {
background-color: #f2f2f2 !important;
border-color: #bbb !important;
color: #333 !important;
}
.content {
margin-top: 60px;
/* ungefähr Höhe der Navbar */
}
/* App Logo */
.app-logo .img-fluid {
max-height: 90px;
padding: 0 5px 0 5px;
}
.table> :not(caption)>*>* {
box-shadow: none;
}
.table .form-control {
background-color: #ffffff !important;
border-width: 0.5px !important;
border-bottom-color: #ccc !important;
color: #000 !important;
}
.table .form-select {
background-color: #ffffff !important;
border-width: 0.5px !important;
border-bottom-color: #ccc !important;
color: #000 !important;
}
.bg-primary {
background-color: #b1b0b0 !important;
}
.table .btn-primary {
background-color: var(--bs-primary);
}
.table .btn-secondary {
background-color: var(--bs-secondary);
}
.alert-dismissible .btn-close {
z-index: 1;
}
.dropdown-menu {
background-color: grey;
}
.controls {
z-index: 2000;
padding-top: 15px;
padding-bottom: 15px;
margin-right: 10px;
}
.footer {
padding-top: 15px;
min-height: 40px;
text-align: center;
color: #ffffff;
z-index: 1000;
}
/* ===================================================
NAVBAR / BURGER / SIDEBAR
=================================================== */
/* Navbar als durchgehende Flex-Zeile */
.app-navbar {
display: flex;
flex-wrap: nowrap;
/* NICHT umbrechen auf Desktop */
align-items: center;
justify-content: flex-start;
z-index: 1000;
}
.app-navbar-left,
.app-navbar-right {
display: flex;
align-items: center;
}
/* etwas Luft zwischen Logo und Menü */
.app-navbar-left {
margin-right: 1rem;
}
/* Versteckte Checkbox steuert die Sidebar */
.nav-toggle {
display: none;
}
/* Burger-Icon (wird nur auf Mobil eingeblendet) */
.nav-toggle-label {
display: none;
/* nur auf Mobil sichtbar */
cursor: pointer;
padding: 0.25rem 0.5rem;
margin-left: auto;
}
.nav-toggle-label span {
display: block;
width: 22px;
height: 2px;
margin: 4px 0;
background-color: #ffffff;
}
/* Menü-Container */
.app-menu {
display: flex;
background-color: #b1b0b0;
}
/* Bereich für die Seitenlinks Basis: horizontales Flex */
.app-menu-items {
display: flex;
flex-wrap: wrap;
gap: 0.75rem;
align-content: center;
}
/* Bereich für Login/Register */
.app-menu-footer {
display: flex;
gap: 0.5rem;
}
/* Untermenü (Kinder-Seiten) etwas eingerückt */
.app-submenu {
margin-left: 1rem;
}
/* Nav-Items */
.app-menu .nav-item {
padding-bottom: 0.25rem;
}
/* Hover-/Active-Style für Links */
.app-menu .nav-link {
padding: 6px 12px;
border-radius: 6px;
transition: background-color 0.2s ease, color 0.2s ease;
}
.app-menu .nav-link:hover {
background-color: #4a4a4a;
color: #ffffff !important;
}
.app-menu .nav-link.active {
background-color: #3b3b3b;
color: #ffffff !important;
}
/* ===========================
DESKTOP (ab 768px)
=========================== */
@media (min-width: 1000px) {
/* Navbar ist Referenz für die absolute Zentrierung */
.app-navbar {
display: flex !important;
flex-wrap: nowrap !important;
align-items: center !important;
justify-content: flex-start !important;
position: relative !important;
min-height: 60px;
/* optional: fixe Höhe */
}
/* Menü nur als Container für den Footer */
.app-menu {
display: flex !important;
flex-direction: row !important;
align-items: center !important;
flex: 1 1 auto !important;
gap: 0.75rem !important;
position: static !important;
width: auto !important;
}
/* NAV-LINKS: exakt in der Mitte der ganzen Navbar / Seite */
.app-menu-items {
position: absolute !important;
left: 50% !important;
top: 50% !important;
transform: translate(-50%, -50%) !important;
display: flex !important;
flex-direction: row !important;
flex-wrap: nowrap !important;
gap: 0.75rem !important;
width: auto !important;
z-index: 1;
}
/* Login/User bleiben im Menü, aber rechts */
.app-menu-footer {
display: flex !important;
gap: 0.75rem !important;
margin-left: auto !important;
/* schiebt Footer nach rechts */
padding: 0 !important;
border: none !important;
background: none !important;
width: auto !important;
}
.app-menu .nav-item {
display: inline-block !important;
}
}
/* ===========================
MOBILE (unter 768px)
=========================== */
@media (max-width: 1000px) {
.navbar {
position: fixed;
top: 0;
width: 100%;
z-index: 1000;
}
/* Platz unter der Navbar */
.content {
position: relative;
top: 150px;
}
/* Burger sichtbar machen */
.nav-toggle-label {
display: flex;
flex-direction: column;
justify-content: center;
}
/* Sidebar-Wrapper rechts */
.app-menu {
position: fixed;
top: 80px;
/* Abstand von oben (über der Navbar + Burger) */
right: 0;
bottom: 0;
width: 70%;
max-width: 280px;
/* Höhe an das neue top anpassen */
background-color: #b1b0b0;
flex-direction: column;
align-items: stretch;
padding: 1rem;
gap: 0.5rem;
transform: translateX(100%);
transition: transform 0.3s ease;
z-index: 1500;
}
/* Seitenlinks vertikal + scrollbar + zentriert */
.app-menu-items {
flex: 1;
overflow-y: auto;
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
gap: 0.25rem;
}
/* Footer (Login/Register) fixiert unten */
.app-menu-footer {
width: 100%;
padding-top: 0.5rem;
border-top: 1px solid rgba(255, 255, 255, 0.25);
display: flex;
flex-direction: column;
/* untereinander statt nebeneinander */
gap: 0.5rem;
/* Abstand zwischen Host und Logout */
justify-content: right;
}
/* Sidebar öffnen/schließen über Checkbox */
.nav-toggle:checked~.app-menu {
transform: translateX(0);
}
.app-menu .nav-link {
width: 100%;
display: block;
font-size: clamp(12px, 3.5vw, 15px);
}
}