:root{--kk-cream:#F7F4F0;--kk-sand:#D4C8BA;--kk-taupe:#9A8B7A;--kk-charcoal:#2D2926;--kk-accent:#C4A77D;--kk-white:#FFF;--kk-radius:8px}
.kk-booking-widget{font-family:'DM Sans',sans-serif;color:var(--kk-charcoal)}
.kk-booking-filters{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}
.kk-filter-group{flex:1;min-width:200px}
.kk-filter-group label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--kk-taupe);margin-bottom:.5rem}
.kk-select{width:100%;padding:.875rem 1rem;border:1px solid var(--kk-sand);border-radius:var(--kk-radius);background:var(--kk-white)}
.kk-booking-calendar-wrap{background:var(--kk-white);border-radius:16px;box-shadow:0 4px 20px rgba(45,41,38,.08);overflow:hidden}
.kk-calendar-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:var(--kk-charcoal);color:var(--kk-white)}
.kk-week-title{font-family:'Cormorant Garamond',serif;font-size:1.5rem;margin:0}
.kk-nav-btn{background:transparent;border:1px solid rgba(255,255,255,.3);color:var(--kk-white);padding:.5rem 1rem;border-radius:var(--kk-radius);cursor:pointer}
.kk-nav-btn:hover{background:var(--kk-accent);border-color:var(--kk-accent)}
.kk-calendar-body{padding:1.5rem}
.kk-calendar-days,.kk-calendar-slots{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem}
.kk-calendar-days{margin-bottom:1rem}
.kk-day-header{text-align:center;padding:.75rem;font-size:.8rem;font-weight:600;text-transform:uppercase;color:var(--kk-taupe)}
.kk-day-header .date{display:block;font-size:1.25rem;color:var(--kk-charcoal);margin-top:.25rem}
.kk-day-slots{min-height:200px}
.kk-slot{background:var(--kk-cream);border-radius:var(--kk-radius);padding:.75rem;margin-bottom:.5rem;cursor:pointer;border:2px solid transparent;transition:all .3s}
.kk-slot:hover{border-color:var(--kk-accent);transform:translateY(-2px)}
.kk-slot-time{font-weight:600}
.kk-slot-training{font-size:.8rem;color:#4A4543}
.kk-slot-trainer{font-size:.75rem;color:var(--kk-taupe)}
.kk-slot-price{font-family:'Cormorant Garamond',serif;color:var(--kk-accent)}
.kk-slot.full{opacity:.5;cursor:not-allowed}
.kk-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:1rem}
.kk-modal-overlay{position:absolute;inset:0;background:rgba(45,41,38,.7)}
.kk-modal-content{position:relative;background:var(--kk-white);border-radius:16px;padding:2rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}
.kk-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:var(--kk-taupe);cursor:pointer}
.kk-modal h3{font-family:'Cormorant Garamond',serif;font-size:1.75rem;margin:0 0 1.5rem}
.kk-booking-summary{background:var(--kk-cream);border-radius:var(--kk-radius);padding:1.25rem;margin-bottom:1.5rem}
.kk-summary-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #EDE8E1}
.kk-summary-item:last-child{border:none}
.kk-summary-item .kk-label{color:var(--kk-taupe)}
.kk-summary-item .kk-value{font-weight:500}
.kk-summary-price .kk-value{font-family:'Cormorant Garamond',serif;font-size:1.25rem;color:var(--kk-accent)}
.kk-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.kk-form-group{margin-bottom:1rem}
.kk-form-group label{display:block;font-size:.85rem;font-weight:500;margin-bottom:.5rem}
.kk-input{width:100%;padding:.875rem 1rem;border:1px solid var(--kk-sand);border-radius:var(--kk-radius)}
.kk-input:focus{outline:none;border-color:var(--kk-accent)}
.kk-form-actions{display:flex;gap:1rem;margin-top:1.5rem;justify-content:center}
.kk-btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 2rem;border-radius:9999px;font-weight:500;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;border:none;text-decoration:none;font-size:.85rem}
.kk-btn-primary{background:var(--kk-charcoal);color:var(--kk-white)}
.kk-btn-primary:hover{background:var(--kk-accent)}
.kk-btn-secondary{background:transparent;color:var(--kk-charcoal);border:1px solid var(--kk-charcoal)}

/* NEW STYLES FOR TWO BUTTONS */
.kk-form-actions-new{text-align:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--kk-cream)}
.kk-form-actions-new .kk-btn-primary{display:block;width:100%;margin-bottom:1rem}
.kk-or-text{font-size:.9rem;color:var(--kk-taupe);margin:0}
.kk-btn-link{background:none;border:none;color:var(--kk-accent);font-weight:600;cursor:pointer;text-decoration:underline;padding:0;font-size:.9rem}
.kk-btn-link:hover{color:var(--kk-charcoal)}

.kk-step-success{text-align:center;padding:2rem 0}
.kk-success-icon{width:80px;height:80px;background:#7A9A7A;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;margin:0 auto 1.5rem}
.success-title{text-align:center}
.success-message{color:var(--kk-taupe);margin-bottom:1.5rem;text-align:center}

@media(max-width:768px){.kk-calendar-slots,.kk-calendar-days{grid-template-columns:repeat(3,1fr)}.kk-form-row{grid-template-columns:1fr}}