/* LH4 5.1 Online-Terminvereinbarung – im bestehenden Design (Farben/Schriften der Website) */
.tb-karte { margin-top: 1.5rem; scroll-margin-top: calc(var(--nav-h) + 1rem); }
.tb-h2 { font-size: 1.6rem; margin-bottom: .75rem; }
.tb-arten { display: grid; gap: .6rem; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.tb-arten .bw-tile { display: flex; gap: .6rem; align-items: center; }
.tb-arten small { display: block; opacity: .75; }
.tb-tage { display: grid; grid-template-columns: repeat(auto-fill, minmax(88px, 1fr)); gap: .5rem; margin: .6rem 0 1rem; }
.tb-tage button, .tb-zeiten button { border: 1px solid rgba(201,169,97,.45); background: transparent; color: inherit; border-radius: 4px; padding: .55rem .35rem; font: inherit; cursor: pointer; text-align: center; }
.tb-tage button small { display: block; font-size: .78rem; opacity: .75; }
.tb-tage button.anfrage { border-style: dashed; }
.tb-tage button[disabled] { opacity: .4; cursor: not-allowed; border-color: rgba(128,128,128,.3); }
.tb-tage button[aria-checked="true"], .tb-zeiten button[aria-checked="true"] { background: var(--gold, #c9a961); color: #141414; border-color: transparent; }
.tb-tage button:focus-visible, .tb-zeiten button:focus-visible, .tb-karte a:focus-visible, .tb-karte input:focus-visible { outline: 2px solid var(--gold, #c9a961); outline-offset: 2px; }
.tb-zeiten { display: flex; flex-wrap: wrap; gap: .5rem; margin: .5rem 0; }
.tb-zeiten button { min-width: 4.5rem; }
#tb-auswahl { border-left: 2px solid var(--gold, #c9a961); padding-left: .8rem; margin-bottom: 1rem; }
#tb-auswahl p { margin: .15rem 0; }
#tb-fertig .tb-zusammenfassung { margin: 1rem 0; }
#tb-fertig .tb-zusammenfassung p { margin: .3rem 0; }
.tb-aktionen { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1rem; }
.tb-aktionen .btn { width: auto; }
@media (max-width: 560px) { .tb-aktionen .btn { width: 100%; } .tb-tage { grid-template-columns: repeat(auto-fill, minmax(80px, 1fr)); } }
.tb-karte [hidden] { display: none !important; }
#tb-schritttext { margin-left: .75rem; }
