Geizkragen/assets/css/catbar.css

219 lines
4.8 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.

/* ==========================================================
CATEGORY BAR
========================================================== */
.home-nav {
width: 100%;
display: flex;
align-items: center;
background-color: #2d3b50;
padding: 1px 0;
}
/* Inner zentriert */
.home-nav__inner {
flex: 1;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
}
/* List */
.home-nav__list {
width: 100%;
display: flex;
list-style: none;
margin: 0;
padding: 0;
}
/* LI nur als Container */
.home-nav__list li {
flex: 1;
position: relative;
}
/* =============================== */
/* HOME CATEGORY LINKS */
/* =============================== */
.home-nav__list li a {
width: 100%;
padding: 8px 0;
background-color: rgb(45, 59, 80);
color: #ffffff;
font-weight: 600;
font-size: 0.9rem;
font-family: var(--font-family);
text-decoration: none;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
border-radius: 0;
transition: background-color 0.2s ease;
}
/* Hover */
.home-nav__list li a:hover {
background-color: rgba(255,255,255,0.18);
}
/* Active (Mausklick) */
.home-nav__list li a:active {
background-color: rgba(255,255,255,0.28);
}
/* Fokus (Tastatur) */
.home-nav__list li a:focus-visible {
outline: none;
box-shadow: inset 0 0 0 2px rgba(255,255,255,0.5);
}
/* Aktive Kategorie (per PHP) */
.home-nav__list li a.active {
background-color: rgba(255,255,255,0.25);
}
/* =============================== */
/* TRENNSTRICHE ZWISCHEN KATEGORIEN */
/* =============================== */
/* Trennstrich rechts außer beim letzten */
.home-nav__list li:not(:last-child)::after {
content: "";
position: absolute;
right: 0;
top: 0;
height: 100%;
width: 2px;
background-color: rgba(255,255,255,0.3);
}
/* ─── Responsive: horizontal scroll on mobile ─── */
@media (max-width: 768px) {
.home-nav__inner {
justify-content: flex-start;
}
.home-nav__list {
overflow-x: auto;
overflow-y: hidden;
scroll-snap-type: x mandatory;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
flex-wrap: nowrap;
}
.home-nav__list::-webkit-scrollbar { display: none; }
.home-nav__list li {
flex: 0 0 auto;
scroll-snap-align: start;
}
.home-nav__list li a {
padding: 8px 16px;
font-size: 0.82rem;
min-height: 40px;
}
}
@media (max-width: 480px) {
.home-nav__list li a {
padding: 8px 12px;
font-size: 0.78rem;
min-height: 36px;
}
}
@media (min-width: 1024px) {
.home-nav__item a {
font-size: 1rem;
padding: 5px 24px;
}
}
/* ==========================================================
ATTRIBUTE FILTER BAR
========================================================== */
.attrbar {
width: 100%;
background-color: var(--bg-card, #1f2937);
border-bottom: 1px solid var(--border-subtle, #2f3c52);
padding: 12px 0;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.attrbar__inner {
display: flex;
justify-content: center;
align-items: center;
}
.attr-filter-form {
display: flex;
flex-wrap: wrap;
gap: 15px;
align-items: center;
justify-content: center;
}
.attr-filter-item {
display: flex;
align-items: center;
gap: 8px;
font-size: 0.9rem;
color: var(--text-secondary, #cbd5e1);
font-family: var(--font-family);
}
.attr-filter-item select {
padding: 6px 10px;
border: 1px solid var(--border-default, #5e6075);
border-radius: var(--radius-md, 5px);
background-color: var(--bg-input, #1e2537);
color: var(--text-primary, #ffffff);
cursor: pointer;
font-size: 0.85rem;
font-family: var(--font-family);
transition: border-color var(--transition-fast, 150ms ease), box-shadow var(--transition-fast, 150ms ease);
}
.attr-filter-item select:focus {
outline: none;
border-color: var(--color-primary, #274a97);
box-shadow: 0 0 0 3px var(--color-primary-soft, rgba(39, 74, 151, 0.15));
}
.attr-filter-item select option {
background-color: var(--bg-surface, #2d3b50);
color: var(--text-primary, #ffffff);
}
.attr-filter-reset {
font-size: 0.85rem;
color: var(--color-danger, #d92d20);
text-decoration: none;
padding: 6px 12px;
border: 1px solid var(--color-danger, #d92d20);
border-radius: var(--radius-md, 5px);
background-color: transparent;
transition: all var(--transition-fast, 150ms ease);
font-family: var(--font-family);
margin-left: 10px;
}
.attr-filter-reset:hover {
background-color: var(--color-danger, #d92d20);
color: var(--text-invert, #ffffff);
box-shadow: 0 4px 12px var(--color-danger-soft, rgba(217, 45, 32, 0.2));
}