/* LUI Verbund – Themenkarte (E1) und „Gerade in den Linux-Nachrichten“ (E2). Ruhig: Token des Themes, keine Farbflächen,
   PlanetFOSS am kleinen Zeichen und an einem Akzent im Verlauf erkennbar. Hell und dunkel.
   Kasten: Themenkarte unter dem Artikel und E2 auf der Startseite; in der Randspalte als Kasten wie „Zuletzt auf Mastodon“. */

.lui-vb-thema, .lui-vb-woche { --lui-vb-pf: #6a52ff; color: var(--c-ink); font-family: var(--f-text); }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) :is(.lui-vb-thema, .lui-vb-woche) { --lui-vb-pf: #9a8cff; } }
:root[data-theme="dark"] :is(.lui-vb-thema, .lui-vb-woche) { --lui-vb-pf: #9a8cff; }
.lui-vb-thema[hidden], .lui-vb-woche[hidden] { display: none; }

/* ---------- Kasten (Karte, Startseite) ---------- */
.lui-vb-thema, .lui-vb-woche--breit { border: 1px solid var(--c-line); border-radius: var(--r-m, 10px); background: var(--c-surface); padding: 20px 24px 18px; }
.lui-vb-thema { margin: var(--sp-6, 2rem) 0; }
.lui-vb-woche--breit { margin: var(--sp-6, 2rem) 0 0; }
.lui-vb__hd { display: flex; justify-content: space-between; align-items: center; gap: 6px 12px; flex-wrap: wrap;
	padding-bottom: 12px; margin-bottom: 16px; border-bottom: 1px solid var(--c-line); }
.lui-vb__brand { display: inline-flex; align-items: center; gap: 10px; color: var(--c-ink-2) !important; text-decoration: none !important; font: 600 .85rem/1 var(--f-text); }
.lui-vb__brand:hover { color: var(--c-ink) !important; }
.lui-vb__brand img { display: block; border-radius: 4px; }
.lui-vb__meta { font: 500 .72rem/1.2 var(--f-mono); color: var(--c-muted); }

/* ---------- E1: Themenkarte ---------- */
.lui-vb__body { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 18px 32px; align-items: end; }
.lui-vb__h { margin: 0 0 8px; font-size: 1.25rem; line-height: 1.25; }
.lui-vb__h a { color: var(--c-ink); text-decoration: none; }
.lui-vb__h a:hover, .lui-vb__h a:focus-visible { text-decoration: underline; text-decoration-color: var(--lui-vb-pf); }
.lui-vb__intro { margin: 0 0 12px; font-size: .93rem; line-height: 1.55; color: var(--c-ink-2);
	display: -webkit-box; -webkit-line-clamp: 3; line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.lui-vb__facts { margin: 0; font: 500 .78rem/1.5 var(--f-mono); color: var(--c-muted); }
.lui-vb__vers { margin: 6px 0 0; font-size: .84rem; color: var(--c-muted); }
.lui-vb__vers a { color: var(--c-ink-2); }
.lui-vb__fig { min-width: 0; }
.lui-vb__chart { display: block; width: 100%; height: 56px; }
.lui-vb__chart rect, .lui-vb__spark rect { fill: var(--c-muted); opacity: .35; }
.lui-vb__chart rect.is-0, .lui-vb__spark rect.is-0 { opacity: .12; }
.lui-vb__chart rect.is-last, .lui-vb__spark rect.is-last { fill: var(--lui-vb-pf); opacity: .9; }
.lui-vb__axis { display: flex; justify-content: space-between; margin-top: 6px; font: 500 .68rem/1.2 var(--f-mono); color: var(--c-muted); }
.lui-vb__ft { display: flex; flex-wrap: wrap; gap: 6px 20px; align-items: baseline; margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--c-line); font-size: .9rem; }
.lui-vb__more { color: var(--c-ink); font-weight: 600; text-decoration: none; }
.lui-vb__more:hover, .lui-vb__more:focus-visible { text-decoration: underline; text-decoration-color: var(--lui-vb-pf); }
.lui-vb__rss { color: var(--c-muted); font-size: .82rem; }
/* ruhiges Thema: fünf Balken zu je sechs Tagen */
.lui-vb__oh { margin: 0 0 8px; font: 600 .72rem/1.3 var(--f-mono); color: var(--c-muted); }
.lui-vb__wrow { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; height: 96px; }
.lui-vb__wcol { display: grid; grid-template-rows: auto 1fr auto; justify-items: center; min-width: 0; }
.lui-vb__wv { font: 600 .82rem/1.2 var(--f-mono); color: var(--c-ink-2); }
.lui-vb__wbar { align-self: end; width: 100%; max-width: 44px; border-radius: 2px 2px 0 0; background: var(--c-muted); opacity: .35; }
.lui-vb__wcol.is-last .lui-vb__wbar { background: var(--lui-vb-pf); opacity: .9; }
.lui-vb__wl { margin-top: 6px; padding-top: 4px; width: 100%; text-align: center; border-top: 1px solid var(--c-line); font: 500 .68rem/1.2 var(--f-mono); color: var(--c-muted); white-space: nowrap; }
@media (max-width: 700px) {
	.lui-vb-thema, .lui-vb-woche--breit { padding: 16px 18px 14px; }
	.lui-vb__body { grid-template-columns: minmax(0, 1fr); }
}

/* ---------- E2: Listen (beide Varianten) ---------- */
.lui-vb__cols { display: grid; gap: 0 40px; }
.lui-vb__grp { min-width: 0; }
.lui-vb-woche .lui-vb__sub { margin: 16px 0 4px; font: 600 .7rem/1.3 var(--f-mono); color: var(--c-muted); }
.lui-vb-woche .lui-vb__sub::before { content: none; display: none; }
.lui-vb__now { list-style: none; margin: 0; padding: 0; }
.lui-vb__now li { display: grid; grid-template-columns: minmax(0, 1fr) 42px 7.5em; align-items: center; gap: 4px 12px; padding: 9px 0; border-top: 1px solid var(--c-line); }
.lui-vb__name { min-width: 0; }
.lui-vb__name a { color: var(--c-ink); font-weight: 600; text-decoration: none; line-height: 1.35; }
.lui-vb__name a:hover, .lui-vb__name a:focus-visible { text-decoration: underline; text-decoration-color: var(--lui-vb-pf); }
.lui-vb__st { display: block; margin-top: 2px; font: 500 .66rem/1.3 var(--f-mono); color: var(--c-muted); }
.lui-vb__st--supernova, .lui-vb__st--komet { color: var(--lui-vb-pf); }
.lui-vb__spark { display: block; width: 42px; height: 18px; }
.lui-vb__n { font: 500 .7rem/1.2 var(--f-mono); color: var(--c-muted); white-space: nowrap; text-align: right; }
.lui-vb__wft { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 16px; margin: 14px 0 0; padding-top: 12px; border-top: 1px solid var(--c-line); font-size: .85rem; }
.lui-vb__wft a { color: var(--c-ink-2); }
.lui-vb__src { margin-right: auto; color: var(--c-muted); font-size: .8rem; }

/* Startseite: zwei Spalten im Kasten */
.lui-vb-woche--breit .lui-vb__wh { margin: 0; font-size: 1.05rem; line-height: 1.3; }
.lui-vb-woche--breit .lui-vb__wh::before { content: none; display: none; }
.lui-vb-woche--breit .lui-vb__cols { grid-template-columns: repeat(auto-fit, minmax(18rem, 1fr)); }
.lui-vb-woche--breit .lui-vb__now li { font-size: 15px; }

/* Randspalte: Kasten wie „Zuletzt auf Mastodon“ (Theme .c2a-masto): Fläche, kleines PlanetFOSS-Zeichen in der Überschrift, Rundbild in der Absenderzeile,
   fetter Link am Ende, Planet als Wasserzeichen in der PlanetFOSS-Farbe */
.lui-vb-woche:not(.lui-vb-woche--breit) { position: relative; overflow: hidden; isolation: isolate; display: block !important;
	background: var(--c-surface); border-radius: var(--r-m, 10px); padding: var(--sp-4, 1rem) var(--sp-5, 1.25rem); font-size: 15px; }
.lui-vb-woche:not(.lui-vb-woche--breit)[hidden] { display: none !important; }
.lui-vb-woche:not(.lui-vb-woche--breit)::after { content: ""; position: absolute; z-index: -1; right: -34px; bottom: -14px; width: 190px; height: 130px;
	background-color: var(--lui-vb-pf); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='4 15 56 38' fill='none' stroke='black' stroke-width='4.2' stroke-linecap='round'%3E%3Cdefs%3E%3Cmask id='a' maskUnits='userSpaceOnUse' x='-20' y='-20' width='104' height='104'%3E%3Crect x='-20' y='-20' width='104' height='104' fill='white' stroke='none'/%3E%3Ccircle cx='32' cy='34' r='19.5' fill='black' stroke='none'/%3E%3C/mask%3E%3Cmask id='b' maskUnits='userSpaceOnUse' x='-20' y='-20' width='104' height='104'%3E%3Crect x='-20' y='-20' width='104' height='104' fill='white' stroke='none'/%3E%3Cpath d='M58 34A26 8.5 0 0 1 6 34' transform='rotate(-22 32 34)' stroke-width='9'/%3E%3C/mask%3E%3C/defs%3E%3Cpath d='M6 34A26 8.5 0 0 1 58 34' transform='rotate(-22 32 34)' mask='url(%23a)'/%3E%3Ccircle cx='32' cy='34' r='15' mask='url(%23b)'/%3E%3Cpath d='M58 34A26 8.5 0 0 1 6 34' transform='rotate(-22 32 34)'/%3E%3C/svg%3E") no-repeat center / contain; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='4 15 56 38' fill='none' stroke='black' stroke-width='4.2' stroke-linecap='round'%3E%3Cdefs%3E%3Cmask id='a' maskUnits='userSpaceOnUse' x='-20' y='-20' width='104' height='104'%3E%3Crect x='-20' y='-20' width='104' height='104' fill='white' stroke='none'/%3E%3Ccircle cx='32' cy='34' r='19.5' fill='black' stroke='none'/%3E%3C/mask%3E%3Cmask id='b' maskUnits='userSpaceOnUse' x='-20' y='-20' width='104' height='104'%3E%3Crect x='-20' y='-20' width='104' height='104' fill='white' stroke='none'/%3E%3Cpath d='M58 34A26 8.5 0 0 1 6 34' transform='rotate(-22 32 34)' stroke-width='9'/%3E%3C/mask%3E%3C/defs%3E%3Cpath d='M6 34A26 8.5 0 0 1 58 34' transform='rotate(-22 32 34)' mask='url(%23a)'/%3E%3Ccircle cx='32' cy='34' r='15' mask='url(%23b)'/%3E%3Cpath d='M58 34A26 8.5 0 0 1 6 34' transform='rotate(-22 32 34)'/%3E%3C/svg%3E") no-repeat center / contain; opacity: .12; pointer-events: none; }
.lui-vb-woche:not(.lui-vb-woche--breit) > * { margin: 0; }
.lui-vb-woche:not(.lui-vb-woche--breit) h2 { display: flex; align-items: center; gap: var(--sp-2, .5rem); margin: 0 0 var(--sp-3, .75rem); }
.lui-vb__who { display: flex; align-items: center; gap: var(--sp-2, .5rem); margin: 0 0 var(--sp-2, .5rem) !important; }
.lui-vb__who a { color: var(--c-ink); text-decoration: none; line-height: 1.25; }
.lui-vb__who b { display: block; font-size: var(--fs-s, .95rem); }
.lui-vb__who small { display: block; font-size: var(--fs-xs, .78rem); color: var(--c-muted); }
.lui-vb-woche:not(.lui-vb-woche--breit) h2::before { content: none !important; display: none !important; }
.lui-vb__glyph { display: inline-grid; place-items: center; flex: none; }
.lui-vb__glyph svg { display: block; width: 100%; height: 100%; overflow: visible; }
.lui-vb-woche h2 .lui-vb__glyph { width: 24px; height: 17px; }
.lui-vb__av { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: 50%; background: #0B1026; flex: none; }
.lui-vb__av .lui-vb__glyph { width: 28px; height: 19px; }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__sub { margin-top: 14px; }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__now li { font-size: 15px; grid-template-columns: minmax(0, 1fr) 36px auto; gap: 4px 10px; }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__spark { width: 36px; }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__wft { margin-top: 10px; gap: 4px 16px; font-size: var(--fs-s, .95rem); }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__wft a { color: var(--c-muted); font-size: .85em; }
.lui-vb-woche:not(.lui-vb-woche--breit) .lui-vb__wft a.lui-vb__go { color: var(--c-ink); font-size: 1em; font-weight: 700; text-decoration-color: var(--c-accent); text-underline-offset: .2em; }
