/* Booking page. Scoped to #bk-app. */
#bk-app .professional-panel { margin-top: 1.4rem; }
#bk-app [hidden] { display: none !important; }
#bk-app .bk-list { display: grid; gap: .7rem; margin-top: 1rem; }
#bk-app .bk-card { display: grid; gap: .2rem; text-align: left; font: inherit; color: inherit; background: transparent; cursor: pointer;
  padding: .9rem 1rem; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); border-radius: 12px; }
#bk-app .bk-card.is-selected { border-color: #4b362e; background: color-mix(in srgb, #b9955a 16%, transparent); }
#bk-app .bk-card strong { font-size: 1.02rem; }
#bk-app .bk-line { font-size: .92rem; opacity: .8; overflow-wrap: anywhere; }
#bk-app .bk-field { display: grid; gap: .35rem; margin-top: 1rem; }
#bk-app input[type="date"], #bk-app textarea { font: inherit; color: inherit; background: transparent; padding: .65rem .8rem; width: 100%; max-width: 100%; box-sizing: border-box;
  border: 1px solid color-mix(in srgb, currentColor 28%, transparent); border-radius: 10px; }
#bk-app input[type="date"] { max-width: 16rem; }
#bk-app .bk-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(5.2rem, 1fr)); gap: .5rem; margin-top: .8rem; }
#bk-app .bk-slot { font: inherit; color: inherit; background: transparent; cursor: pointer; padding: .55rem .4rem; border-radius: 10px;
  border: 1px solid color-mix(in srgb, currentColor 25%, transparent); }
#bk-app .bk-slot.is-selected { background: #4b362e; color: #fff; border-color: #4b362e; }
#bk-app .bk-summary { font-weight: 600; margin: .8rem 0; }
