html,
body {
margin: 0;
min-height: 100%;
background: var(--md-sys-color-surface, #ffffff);
color: var(--md-sys-color-on-surface, #1a1a1a);
font-family: system-ui, -apple-system, 'Segoe UI', sans-serif;
}
.rahmen {
padding: 20px 24px 32px;
max-width: 1000px;
margin: 0 auto;
}
.kopf {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-bottom: 16px;
}
.kopf h1 {
font-size: 1.3rem;
margin: 0;
}
.kopf-aktionen {
display: flex;
gap: 8px;
align-items: center;
}
.theme-select {
min-width: 140px;
}
.hinweis {
background: var(--md-sys-color-secondary-container, #e6e0ec);
color: var(--md-sys-color-on-secondary-container, #1d1b20);
padding: 12px 16px;
border-radius: 8px;
margin-bottom: 16px;
}
.warnung {
padding: 12px 16px;
margin-bottom: 16px;
border-radius: 8px;
border: 1px solid var(--md-sys-color-error, #b00020);
background: var(--md-sys-color-error-container, rgba(176, 0, 32, 0.12));
color: var(--md-sys-color-on-error-container, #410002);
}
/* Die Meldung, für die es den Client gibt — deutlicher als ein normaler Hinweis. */
.update-hinweis {
padding: 12px 16px;
margin-bottom: 16px;
border-radius: 8px;
border-left: 4px solid var(--md-sys-color-primary, #ff8014);
background: var(--md-sys-color-surface-container-high, #eeeeee);
color: var(--md-sys-color-on-surface, #1a1a1a);
}
.suche {
display: block;
max-width: 400px;
margin-bottom: 12px;
}
dh-tab {
display: block;
}
[slot='tab-content'].hidden {
display: none;
}
.leer {
padding: 16px 4px;
opacity: 0.7;
}
.liste {
border: 1px solid var(--md-sys-color-outline-variant, #cac4d0);
border-radius: 8px;
overflow: hidden;
}
.liste > client-zeile {
display: block;
border-bottom: 1px solid var(--md-sys-color-outline-variant, #e7e0ec);
}
.liste > client-zeile:last-child {
border-bottom: none;
}
.zeile {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
padding: 8px 16px;
}
.zeile-info {
display: flex;
flex-direction: column;
min-width: 0;
flex: 1 1 auto;
overflow: hidden;
}
.zeile-info > * {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.zeile-name {
font-weight: 600;
display: flex;
align-items: center;
gap: 8px;
}
.zeile-meta {
font-size: 0.85em;
opacity: 0.7;
}
.zeile-hinweis {
font-size: 0.85em;
color: var(--md-sys-color-on-surface-variant, #49454f);
font-style: italic;
}
/* Feste Spalten, damit die Schaltflächen über alle Zeilen untereinander stehen. */
.zeile-aktionen {
display: grid;
grid-template-columns: 48px 48px;
gap: 8px;
align-items: center;
justify-items: center;
flex-shrink: 0;
}
.marke {
flex-shrink: 0;
font-size: 0.72em;
font-weight: 500;
text-transform: uppercase;
letter-spacing: 0.04em;
padding: 2px 8px;
border-radius: 999px;
}
.intern-marke {
background: var(--md-sys-color-primary-container, #ffe4cc);
color: var(--md-sys-color-on-primary-container, #4a1e00);
}
.lizenz-marke {
background: var(--md-sys-color-tertiary-container, #ffd9a0);
color: var(--md-sys-color-on-tertiary-container, #2b1700);
}
.zustand-aktuell {
color: var(--md-sys-color-primary, #ff8014);
}
.zustand-veraltet,
.zustand-fremd {
color: var(--md-sys-color-error, #b00020);
font-weight: 500;
}
.zustand-fehlt {
font-style: italic;
}
.feldhinweis {
display: block;
font-size: 0.8em;
opacity: 0.7;
margin-top: 4px;
}
dh-card {
display: block;
}
[slot='actions'] {
display: flex;
flex-wrap: wrap;
gap: 8px;
align-items: center;
}