/* VeneziaCast Glossar — alles unter .vcg gescopt, damit nichts mit tv-Klassen kollidiert. */

.vcg{
  --vcg-blau:#1a4d6e;
  --vcg-gold:#96700d;
  --vcg-rot:#a23838;
  --vcg-ink:#15222b;
  --vcg-ink2:#3c4f5b;
  --vcg-mu:#6a7c88;
  --vcg-line:#d8e2e9;
  --vcg-line2:#c3d2dc;
  --vcg-bg:#f4f7f9;
  --vcg-surface:#ffffff;
  --vcg-surface2:#eef3f6;
  --vcg-r:10px;

  color:var(--vcg-ink);
  font-size:16px;
  line-height:1.55;
  margin:28px 0 8px;
}

.vcg *,
.vcg *::before,
.vcg *::after{box-sizing:border-box}

.vcg [hidden]{display:none !important}
.vcg .vcg-hide{display:none !important}

.vcg button{font:inherit;color:inherit;cursor:pointer}
.vcg :focus-visible{outline:2px solid var(--vcg-blau);outline-offset:2px;border-radius:3px}

/* ---------- Kennzahlen ---------- */
.vcg-stats{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(130px,1fr));
  gap:1px;
  background:var(--vcg-line);
  border:1px solid var(--vcg-line);
  border-radius:var(--vcg-r);
  overflow:hidden;
  margin:0 0 22px;
}
.vcg-stat{background:var(--vcg-surface);padding:13px 16px;display:flex;flex-direction:column;gap:2px}
.vcg-stat b{font-size:24px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--vcg-blau)}
.vcg-stat span{font-size:11.5px;letter-spacing:.05em;color:var(--vcg-mu);text-transform:uppercase;font-weight:600}

/* ---------- Bedienleiste ---------- */
.vcg-bar{
  position:sticky;
  top:0;
  z-index:5;
  background:var(--vcg-bg);
  padding:12px;
  margin:0 0 8px;
  border:1px solid var(--vcg-line);
  border-radius:var(--vcg-r);
}
.vcg-searchwrap{position:relative;display:flex;align-items:center}
.vcg-searchwrap input[type="search"]{
  flex:1;width:100%;font:inherit;font-size:16.5px;color:var(--vcg-ink);
  background:var(--vcg-surface);border:1px solid var(--vcg-line2);
  border-radius:8px;padding:11px 92px 11px 14px;-webkit-appearance:none;appearance:none;
}
.vcg-searchwrap input[type="search"]::placeholder{color:var(--vcg-mu)}
.vcg-searchwrap input[type="search"]:focus{outline:2px solid var(--vcg-blau);outline-offset:-1px;border-color:transparent}
.vcg-clear{
  position:absolute;right:10px;top:50%;transform:translateY(-50%);
  border:1px solid var(--vcg-line2);background:var(--vcg-surface2);border-radius:5px;
  padding:4px 10px;font-size:12.5px;color:var(--vcg-ink2);display:none;
}
.vcg-searchwrap.vcg-on .vcg-clear{display:block}

.vcg-tabs{display:flex;gap:6px;margin-top:11px;flex-wrap:wrap}
.vcg-tab{
  border:1px solid var(--vcg-line2);background:var(--vcg-surface);
  border-radius:8px;padding:7px 14px;font-size:14px;font-weight:600;
  display:inline-flex;gap:8px;align-items:center;color:var(--vcg-ink2);
}
.vcg-tab i{font-style:normal;font-size:11.5px;font-weight:500;color:var(--vcg-mu);font-variant-numeric:tabular-nums}
.vcg-tab:hover{border-color:var(--vcg-blau);color:var(--vcg-blau)}
.vcg-tab[aria-selected="true"]{background:var(--vcg-blau);border-color:var(--vcg-blau);color:#fff}
.vcg-tab[aria-selected="true"] i{color:#fff;opacity:.75}

.vcg-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.vcg-chip{
  border:1px solid var(--vcg-line2);background:var(--vcg-surface);border-radius:999px;
  padding:5px 12px;font-size:13px;display:inline-flex;gap:7px;align-items:center;color:var(--vcg-ink2);
}
.vcg-chip i{font-style:normal;font-size:11px;color:var(--vcg-mu);font-variant-numeric:tabular-nums}
.vcg-chip:hover{border-color:var(--vcg-blau);color:var(--vcg-blau)}
.vcg-chip[aria-pressed="true"]{background:var(--vcg-blau);border-color:var(--vcg-blau);color:#fff}
.vcg-chip[aria-pressed="true"] i{color:#fff;opacity:.75}

.vcg-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;flex-wrap:wrap}
#vcg-count{font-size:13px;color:var(--vcg-mu);font-variant-numeric:tabular-nums}
.vcg-acts{display:flex;gap:6px}
.vcg-act{
  border:1px solid var(--vcg-line2);background:var(--vcg-surface);border-radius:7px;
  padding:5px 11px;font-size:12.5px;color:var(--vcg-ink2);
}
.vcg-act:hover{border-color:var(--vcg-blau);color:var(--vcg-blau)}

.vcg-rail{display:flex;flex-wrap:wrap;gap:3px;margin-top:11px}
.vcg-rl{
  width:27px;height:27px;border:1px solid var(--vcg-line);background:var(--vcg-surface);
  border-radius:5px;font-size:12.5px;color:var(--vcg-ink2);font-weight:600;
  display:inline-flex;align-items:center;justify-content:center;padding:0;
}
.vcg-rl:hover:not([disabled]){border-color:var(--vcg-blau);color:var(--vcg-blau)}
.vcg-rl[disabled]{opacity:.3;cursor:default}

/* ---------- Gruppen ---------- */
.vcg-grp{margin-top:34px;scroll-margin-top:220px}
.vcg-grp-hd{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.vcg-nizio{
  font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1;
  background:#fbfbf8;color:#1d1d1b;border:2px solid #1d1d1b;
  padding:7px 15px 8px;letter-spacing:.06em;
}
.vcg-grp-rule{flex:1;height:1px;background:var(--vcg-line)}

.vcg-grid{
  display:flex;flex-direction:column;gap:1px;
  background:var(--vcg-line);border:1px solid var(--vcg-line);
  border-radius:var(--vcg-r);overflow:hidden;
}

/* ---------- Begriff ---------- */
.vcg-term{background:var(--vcg-surface)}
.vcg-term > summary{
  list-style:none;cursor:pointer;padding:12px 16px;
  display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;
}
.vcg-term > summary::-webkit-details-marker{display:none}
.vcg-term > summary::marker{content:""}
.vcg-term > summary:hover,
.vcg-term[open] > summary{background:var(--vcg-surface2)}
.vcg-term > summary h3{
  margin:0;padding:0;font-size:17px;font-weight:700;line-height:1.35;
  letter-spacing:-.005em;color:var(--vcg-ink);border:0;
}
.vcg-term > summary em{font-style:normal;color:var(--vcg-mu);font-size:14px}

.vcg-tb{padding:0 16px 17px;display:flex;flex-direction:column;gap:11px}
.vcg-def{margin:0;font-size:16px;line-height:1.6;color:var(--vcg-ink2);max-width:66ch}
.vcg-langs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px;max-width:66ch}
.vcg-langs li{display:flex;gap:10px;align-items:baseline;font-size:14px;margin:0}
.vcg-lg{font-size:10.5px;letter-spacing:.07em;font-weight:700;color:var(--vcg-gold);width:92px;flex:none;text-transform:uppercase}
.vcg-lv{color:var(--vcg-ink2)}
.vcg-src{margin:0;font-size:12.5px;color:var(--vcg-mu);max-width:66ch}
.vcg-src-k{font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:10.5px}
.vcg-src-d{color:var(--vcg-gold);white-space:nowrap}
.vcg-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.vcg-tl{font-size:13.5px;color:var(--vcg-blau);text-decoration:none;border-bottom:1px solid var(--vcg-line2);font-weight:600}
.vcg-tl:hover{border-bottom-color:var(--vcg-blau)}
.vcg-cp{border:1px solid var(--vcg-line2);background:var(--vcg-surface2);border-radius:6px;padding:4px 10px;font-size:12.5px;color:var(--vcg-ink2)}
.vcg-cp:hover{border-color:var(--vcg-blau);color:var(--vcg-blau)}

/* ---------- Verzeichniskarte ---------- */
.vcg-card{background:var(--vcg-surface);padding:12px 16px}
.vcg-card h3{margin:0 0 3px;padding:0;font-size:16px;font-weight:700;line-height:1.35;border:0}
.vcg-card h3 a{color:var(--vcg-blau);text-decoration:none}
.vcg-card h3 a:hover{text-decoration:underline}
.vcg-card p{margin:0;font-size:14px;line-height:1.5;color:var(--vcg-mu);max-width:72ch}

.vcg mark{background:rgba(201,148,30,.28);color:inherit;border-radius:2px;padding:0 1px}

.vcg-empty{padding:34px 16px;text-align:center;color:var(--vcg-mu);font-size:15px}
.vcg-fehler{padding:16px;border:1px solid var(--vcg-line2);border-radius:var(--vcg-r);color:var(--vcg-mu)}

.vcg-foot{margin:30px 0 0;font-size:12.5px;color:var(--vcg-mu);max-width:70ch;border-top:1px solid var(--vcg-line);padding-top:14px}

@media (max-width:640px){
  .vcg-bar{padding:10px;border-radius:8px}
  .vcg-term > summary{padding:11px 13px}
  .vcg-tb{padding:0 13px 15px}
  .vcg-card{padding:11px 13px}
  .vcg-lg{width:auto;min-width:78px}
  .vcg-grp{scroll-margin-top:280px}
}

@media (prefers-reduced-motion:reduce){
  .vcg *{transition:none !important}
}
