/* Signatur „Eine Website von Tom Hauck“ – eigenständiger Baustein (Graphit + Gold), unabhängig von den Farben der Seite.
   Einbinden: <link rel="stylesheet" href=".../th-credit.css"> + HTML-Schnipsel (siehe snippet.html). Keine externen Quellen. */
.thc-wrap { display: flex; justify-content: center; padding: 18px 16px 22px; clear: both; }
.thc-wrap.thc-left { justify-content: flex-start; padding-left: 0; padding-right: 0; }
.thc {
  --thc-gold: #d9a85b; --thc-gold-soft: #e6b973;
  position: relative; isolation: isolate; overflow: hidden; box-sizing: border-box;
  display: inline-flex; align-items: center; gap: 12px; padding: 8px 16px 8px 12px; margin: 0;
  background: #0e0f11; color: #ededeb !important; text-decoration: none !important;
  border: 2px solid #2a2c31; border-radius: 999px; box-shadow: 0 6px 18px -8px rgba(0, 0, 0, .55);
  font: 400 15px/1.2 "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; letter-spacing: normal; text-transform: none;
  transition: transform .3s cubic-bezier(.16, 1, .3, 1), box-shadow .3s, border-color .3s;
}
.thc img { width: 30px; height: auto; display: block; margin: 0; border: 0; transition: transform .5s cubic-bezier(.16, 1, .3, 1); }
.thc-txt { display: grid; line-height: 1.1; text-align: left; }
.thc-txt small { font-size: 11.5px; color: #a0a2a7; letter-spacing: .02em; white-space: nowrap; font-weight: 400; }
.thc-txt b { font-size: 16px; font-weight: 800; color: #ededeb; letter-spacing: .01em; }
.thc-more { display: grid; grid-template-columns: 0fr; transition: grid-template-columns .5s cubic-bezier(.16, 1, .3, 1); }
.thc-more > span { overflow: hidden; white-space: nowrap; min-width: 0; color: var(--thc-gold-soft); font-weight: 700; font-size: 13px; padding-left: 2px; }
.thc svg { width: 18px; height: 18px; color: var(--thc-gold); flex: none; transition: transform .3s cubic-bezier(.16, 1, .3, 1); }
.thc::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(105deg, transparent 30%, rgb(217 168 91 / .32) 48%, rgb(255 236 200 / .18) 52%, transparent 70%);
  transform: translateX(-130%);
}
.thc:hover, .thc:focus-visible { transform: translateY(-2px); border-color: var(--thc-gold); box-shadow: 0 10px 24px -10px rgba(0, 0, 0, .6); }
.thc:focus-visible { outline: 3px solid var(--thc-gold); outline-offset: 3px; }
.thc:hover .thc-more, .thc:focus-visible .thc-more { grid-template-columns: 1fr; }
.thc:hover img, .thc:focus-visible img { transform: rotate(-8deg) scale(1.1); }
.thc:hover svg, .thc:focus-visible svg { transform: translate(2px, -2px); }
@media (prefers-reduced-motion: no-preference) { .thc:hover::before { animation: thc-sweep 1.1s cubic-bezier(.16, 1, .3, 1) both; } }
@keyframes thc-sweep { to { transform: translateX(130%); } }
@media print { .thc-wrap { display: none; } }
