.kb{max-width:780px;margin:0 auto;--kb-free:#fff;--kb-busy:#e9e6df;--kb-pick:var(--ink,#292823)}
.kb-info{border-left:2px solid var(--accent,#766d5b);padding:4px 0 4px 20px;margin:0 0 40px;color:var(--muted,#6e6b62)}
.kb-step{border-top:1px solid var(--line,#d9d6cf);padding:34px 0 38px}
.kb-step h2{font-size:28px;margin:0 0 20px;text-align:left;display:flex;align-items:center;gap:14px}
.kb-step h2 span{font:13px/1 Arial,sans-serif;width:30px;height:30px;border:1px solid var(--ink,#292823);border-radius:50%;display:inline-grid;place-items:center;flex:none}
.kb-day{display:flex;gap:10px;align-items:stretch}
.kb-day input{flex:1;max-width:260px;font:inherit;padding:10px 14px;border:1px solid var(--line,#d9d6cf);background:#fff;color:inherit}
.kb-arrow{border:1px solid var(--line,#d9d6cf);background:#fff;width:48px;font-size:20px;cursor:pointer;color:inherit}
.kb-arrow:hover{border-color:var(--ink,#292823)}
.kb-day-label{margin:12px 0 0;text-transform:capitalize;font-family:Georgia,serif;font-size:19px}
.kb-hint,.kb-small{color:var(--muted,#6e6b62);font-size:14px;margin:0 0 16px}
.kb-small{margin:14px 0 0}
.kb-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px}
.kb-slots>p{grid-column:1/-1}
.kb-slot{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border:1px solid var(--line,#d9d6cf);background:var(--kb-free);color:inherit;cursor:pointer;line-height:1.2}
.kb-slot strong{font-size:16px;font-weight:600}.kb-slot small{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted,#6e6b62)}
.kb-slot.is-free:hover{border-color:var(--ink,#292823)}
.kb-slot.is-busy,.kb-slot.is-off{background:var(--kb-busy);cursor:not-allowed;color:#9b978d}
.kb-slot.is-busy strong{text-decoration:line-through}
.kb-slot.is-off{opacity:.55}
.kb-slot.is-picked{background:var(--kb-pick);border-color:var(--kb-pick);color:#fff}.kb-slot.is-picked small{color:#ddd}
.kb-legend{display:flex;gap:20px;margin-top:16px;font-size:12px;color:var(--muted,#6e6b62)}
.kb-legend span:before{content:'';display:inline-block;width:12px;height:12px;margin-right:7px;vertical-align:-1px;border:1px solid var(--line,#d9d6cf)}
.kb-legend .is-free:before{background:var(--kb-free)}.kb-legend .is-busy:before{background:var(--kb-busy)}.kb-legend .is-picked:before{background:var(--kb-pick)}
.kb-summary{padding:14px 18px;background:#f1efe9;margin:0 0 24px;color:var(--muted,#6e6b62)}
.kb-summary.is-ready{background:#fff;border:1px solid var(--ink,#292823);color:var(--ink,#292823);font-weight:600}
.kb-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.kb-fields label{display:flex;flex-direction:column;gap:6px;font-size:14px}
.kb-fields small{color:var(--muted,#6e6b62)}
.kb-fields input:not([type=checkbox]),.kb-fields textarea{font:inherit;padding:10px 12px;border:1px solid var(--line,#d9d6cf);background:#fff;color:inherit;width:100%}
.kb-fields input:focus,.kb-fields textarea:focus,.kb-day input:focus{outline:2px solid #ad7e33;outline-offset:1px}
.kb-wide{grid-column:1/-1}
.kb-check{flex-direction:row!important;align-items:flex-start;gap:10px!important;color:var(--muted,#6e6b62)}
.kb-check input{margin-top:6px}
.kb-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.kb-msg{padding:12px 16px;background:#eef5ea;margin:22px 0 0}
.kb-msg.is-error{background:#fbeceb;color:#8a2a22}
.kb .button{margin-top:22px;cursor:pointer}
.kb .button:disabled{opacity:.4;cursor:not-allowed}
.kb-done{text-align:center;padding:50px 0;border-top:1px solid var(--line,#d9d6cf)}
.kb-done:focus{outline:none}
@media(max-width:600px){.kb-fields{grid-template-columns:1fr}.kb-slots{grid-template-columns:repeat(3,1fr)}.kb-step h2{font-size:23px}.kb-day input{max-width:none}}
