/* Sidebar & Widgets */
.blog-sidebar { flex: 3; font-family: var(--sidebar-font); color: var(--sidebar-text-color); }
.sidebar-box { background-color: var(--sidebar-bg); padding: 25px; border-radius: 12px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); margin-bottom: 30px; }

.sidebar-title, .card-title, .single-post-box .entry-title, .single-page-box .entry-title { margin-top: 0; margin-bottom: 20px; border-bottom: 2px solid var(--link-color); padding-bottom: 10px; display: inline-block; color: var(--text-color); }
.sidebar-title, .card-title { font-size: 1.3rem; }
.single-post-box .entry-title, .single-page-box .entry-title { font-size: 2rem; }

.sidebar-box ul { list-style: none; padding: 0; margin: 0; }
.sidebar-box ul li { padding: 6px 0; position: relative; line-height: 1.6; }
.sidebar-box:not(.tree-widget) ul li { border-bottom: 1px solid rgba(0,0,0,0.05); display: flex; justify-content: space-between; }
.sidebar-box:not(.tree-widget) ul li:last-child { border-bottom: none; }

/* Baumstruktur */
.tree-widget ul li { padding-left: 22px; }
.tree-widget ul ul.children { display: none; border-left: 1px dashed rgba(0,0,0,0.2); margin-left: -15px; padding-left: 15px; margin-top: 5px; margin-bottom: 5px; }
.tree-widget ul li.open > ul.children { display: block; }
.tree-widget ul ul.children li::before { content: ""; position: absolute; top: 13px; left: -15px; width: 10px; border-bottom: 1px dashed rgba(0,0,0,0.2); }
.tree-toggle { position: absolute; left: 0; top: 6px; width: 14px; height: 14px; display: flex; align-items: center; justify-content: center; border: 1px solid var(--link-color); background-color: var(--sidebar-bg); color: var(--link-color); font-size: 10px; font-weight: bold; cursor: pointer; z-index: 2; border-radius: 2px; transition: all 0.2s ease; }
.tree-toggle:hover { background-color: var(--link-color); color: #ffffff; }

/* Tagcloud */
.tagcloud { display: flex; flex-wrap: wrap; gap: 8px; }
.tagcloud a { display: inline-block; background-color: rgba(0,0,0,0.04); color: var(--sidebar-text-color); padding: 6px 12px; border-radius: 15px; border: 1px solid rgba(0,0,0,0.05); font-size: 0.85rem !important; transition: all 0.2s ease; }
.tagcloud a:hover { background-color: var(--link-color); color: #ffffff; border-color: var(--link-color); }