:root{--network-bg:#ffffff;--network-surface:#FAFAF7;--network-border:rgba(0, 0, 0, 0.08);--network-border-strong:rgba(0, 0, 0, 0.16);--network-fg:#23272b;--network-fg-muted:#5a5f66;--network-highlight:#C9A227;--network-dim-opacity:0.12;--topic-sprechen_dialog:#4A7E97;--topic-sprechen_monolog:#5C7C1F;--topic-schreiben:#B16A53;--topic-leseverstehen:#6B8773;--topic-hoerverstehen:#856EA8;--topic-sprachmittlung:#A87A45;--topic-text_medien:#756758}@media(prefers-color-scheme:dark){body.colorscheme-auto{--network-bg:#14161A;--network-surface:#1C1F26;--network-border:rgba(255, 255, 255, 0.08);--network-border-strong:rgba(255, 255, 255, 0.18);--network-fg:#e8e8e8;--network-fg-muted:#9aa0a8;--network-highlight:#F0D060;--topic-sprechen_dialog:#7FB0CC;--topic-sprechen_monolog:#A7C26B;--topic-schreiben:#E29A82;--topic-leseverstehen:#A4C3B2;--topic-hoerverstehen:#B8A1D9;--topic-sprachmittlung:#E5B98F;--topic-text_medien:#B8A89A}}body.colorscheme-dark{--network-bg:#14161A;--network-surface:#1C1F26;--network-border:rgba(255, 255, 255, 0.08);--network-border-strong:rgba(255, 255, 255, 0.18);--network-fg:#e8e8e8;--network-fg-muted:#9aa0a8;--network-highlight:#F0D060;--topic-sprechen_dialog:#7FB0CC;--topic-sprechen_monolog:#A7C26B;--topic-schreiben:#E29A82;--topic-leseverstehen:#A4C3B2;--topic-hoerverstehen:#B8A1D9;--topic-sprachmittlung:#E5B98F;--topic-text_medien:#B8A89A}.network-page{display:grid;grid-template-rows:auto 1fr auto auto;grid-template-columns:minmax(0,1fr);gap:1rem;margin:0 auto;max-width:1280px;padding:.5rem 1rem 2rem;color:var(--network-fg)}.network-search-row{display:flex;gap:.5rem;align-items:center;background:var(--network-surface);border:1px solid var(--network-border);border-radius:8px;padding:.5rem .75rem}.network-search-input{flex:1;background:0 0;border:0;color:var(--network-fg);font-family:'source sans 3',system-ui,sans-serif;font-size:.95rem;outline:none;padding:.25rem}.network-search-input::placeholder{color:var(--network-fg-muted)}.network-search-key{font-family:jetbrains mono,monospace;font-size:.7rem;color:var(--network-fg-muted);border:1px solid var(--network-border-strong);padding:.1rem .4rem;border-radius:3px}.network-shell{display:grid;grid-template-columns:280px minmax(0,1fr);grid-template-rows:minmax(480px,60vh);gap:1rem}@media(max-width:1023px){.network-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(360px,50vh)}}@media(max-width:767px){.network-shell{grid-template-rows:auto}.network-graph-wrap{display:none}}.network-filters{background:var(--network-surface);border:1px solid var(--network-border);border-radius:8px;padding:1rem 1rem .75rem;overflow-y:auto}.network-filters h3{font-family:jetbrains mono,monospace;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--network-fg-muted);margin:0 0 .5rem}.network-filter-group{margin-bottom:1.1rem}.network-filter-group:last-child{margin-bottom:0}.network-chips{display:flex;flex-wrap:wrap;gap:.35rem}.network-chip{display:inline-flex;align-items:center;gap:.4rem;background:var(--network-surface);color:var(--network-fg);border:1px solid var(--network-border-strong);border-radius:999px;padding:.2rem .65rem;font-size:.82rem;font-family:'source sans 3',system-ui,sans-serif;cursor:pointer;transition:background .12s ease-out,border-color .12s ease-out}.network-chip:hover{border-color:var(--network-highlight)}.network-chip[aria-pressed=true]{background:var(--network-highlight);border-color:var(--network-highlight);color:#1d1f21}.network-chip-count{font-family:jetbrains mono,monospace;font-size:.7rem;opacity:.7}.network-chip-swatch{width:.7rem;height:.7rem;border-radius:50%;border:1px solid rgba(0,0,0,.18);display:inline-block}.network-type-glyph{font-family:jetbrains mono,monospace;font-size:.85rem;line-height:1}.network-graph-wrap{background:var(--network-surface);border:1px solid var(--network-border);border-radius:8px;position:relative;overflow:hidden}.network-graph-svg{width:100%;height:100%;display:block}.network-graph-skeleton{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.network-graph-skeleton::before,.network-graph-skeleton::after{content:"";position:absolute;border:2px solid var(--network-border-strong);border-radius:50%;animation:network-ripple 2.4s ease-out infinite;opacity:0}.network-graph-skeleton::after{animation-delay:1.2s}@keyframes network-ripple{0%{width:0;height:0;opacity:.55}80%{width:240px;height:240px;opacity:.05}100%{width:280px;height:280px;opacity:0}}.network-counter{display:flex;align-items:center;justify-content:space-between;font-family:jetbrains mono,monospace;font-size:.78rem;color:var(--network-fg-muted);padding:.3rem .2rem;border-bottom:1px solid var(--network-border)}.network-counter-reset{background:0 0;border:1px solid var(--network-border-strong);color:var(--network-fg);padding:.2rem .6rem;border-radius:4px;font-family:inherit;font-size:.75rem;cursor:pointer;transition:border-color .12s ease-out,color .12s ease-out}.network-counter-reset:hover{border-color:var(--network-highlight);color:var(--network-highlight)}.network-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.85rem;margin-top:.5rem}@media(max-width:767px){.network-cards{grid-template-columns:1fr}}.network-card{background:var(--network-surface);border:1px solid var(--network-border);border-left:3px solid var(--topic-leseverstehen);border-radius:8px;padding:.9rem 1rem;display:flex;flex-direction:column;gap:.4rem;transition:transform .12s ease-out,box-shadow .12s ease-out,border-color .12s ease-out}.network-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.12)}.network-card.is-article{grid-column:span 2}@media(max-width:767px){.network-card.is-article{grid-column:span 1}}.network-card-title{font-family:'source sans 3',system-ui,sans-serif;font-weight:600;font-size:1rem;color:var(--network-fg);line-height:1.3;margin:0}.network-card-meta{font-family:jetbrains mono,monospace;font-size:.72rem;color:var(--network-fg-muted);text-transform:uppercase;letter-spacing:.04em}.network-card-desc{font-size:.88rem;line-height:1.5;color:var(--network-fg-muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.network-card-download{display:inline-block;padding:.25rem .6rem;border:1px solid var(--boulingua-accent,#1a73e8);color:var(--boulingua-accent,#1a73e8);border-radius:4px;font-size:.85rem;text-decoration:none;transition:background .12s ease-out,color .12s ease-out}.network-card-download:hover{background:var(--boulingua-accent,#1a73e8);color:var(--network-bg)}.network-cards{list-style:none;padding:0;margin:.5rem 0 0}.network-card-tags{display:flex;flex-wrap:wrap;gap:.3rem}.network-card-tag{font-family:jetbrains mono,monospace;font-size:.7rem;background:var(--network-bg);color:var(--network-fg-muted);border:1px solid var(--network-border-strong);padding:.1rem .4rem;border-radius:3px}.network-card-actions{display:flex;gap:.6rem;margin-top:.4rem;font-size:.85rem}.network-card-actions a{text-decoration:none;color:var(--boulingua-accent,#1a73e8)}.network-card[data-topic=sprechen_dialog]{border-left-color:var(--topic-sprechen_dialog)}.network-card[data-topic=sprechen_monolog]{border-left-color:var(--topic-sprechen_monolog)}.network-card[data-topic=schreiben]{border-left-color:var(--topic-schreiben)}.network-card[data-topic=leseverstehen]{border-left-color:var(--topic-leseverstehen)}.network-card[data-topic=hoerverstehen]{border-left-color:var(--topic-hoerverstehen)}.network-card[data-topic=sprachmittlung]{border-left-color:var(--topic-sprachmittlung)}.network-card[data-topic=text_medien]{border-left-color:var(--topic-text_medien)}.glyph-article{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;background:currentColor}.glyph-presentation{display:inline-block;width:.7rem;height:.7rem;background:currentColor}.glyph-worksheet{display:inline-block;width:.7rem;height:.7rem;transform:rotate(45deg);background:currentColor}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.network-page *:focus-visible{outline:2px solid var(--network-highlight);outline-offset:2px}.network-empty{text-align:center;padding:3rem 1rem;color:var(--network-fg-muted)}.network-empty svg{width:96px;height:96px;opacity:.5;margin-bottom:.8rem}