.skbk-wrap{max-width:640px;margin:0 auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1c1c1c}
.skbk-form{display:grid;gap:1rem;padding:1.5rem;border:1px solid #e5e5e5;border-radius:12px;background:#fff}
.skbk-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.9rem;font-weight:600}
.skbk-form input,.skbk-form select,.skbk-form textarea{font:inherit;padding:.55rem .7rem;border:1px solid #cfcfcf;border-radius:8px;background:#fafafa}
.skbk-form input:focus,.skbk-form select:focus,.skbk-form textarea:focus{outline:2px solid #4b6bff;background:#fff}
.skbk-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:520px){.skbk-row{grid-template-columns:1fr}}
.skbk-slots{min-height:2.5rem}
.skbk-hint{margin:0;color:#666;font-size:.9rem}
.skbk-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.4rem;margin-top:.5rem}
.skbk-slot{padding:.45rem .3rem;border:1px solid #cfcfcf;border-radius:8px;background:#fff;font:inherit;cursor:pointer;text-align:center}
.skbk-slot:hover{border-color:#4b6bff}
.skbk-slot.is-active{background:#4b6bff;color:#fff;border-color:#4b6bff}
.skbk-btn{padding:.8rem 1rem;border:0;border-radius:8px;background:#111;color:#fff;font-weight:600;cursor:pointer}
.skbk-btn[disabled]{opacity:.5;cursor:not-allowed}
.skbk-message{margin:0;font-size:.95rem}
.skbk-message.is-error{color:#b00020}
.skbk-message.is-success{color:#0a7f3f}
.skbk-tz{text-align:center;color:#777;font-size:.8rem;margin-top:.5rem}
.skbk-loading{color:#666;font-size:.9rem}

/* Calendar view */
.skbk-cal-wrap{max-width:820px;margin:0 auto;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#1c1c1c}
.skbk-cal-filter{display:flex;align-items:center;gap:.6rem;margin-bottom:.75rem;font-size:.95rem}
.skbk-cal-filter label{font-weight:600}
.skbk-cal-filter select{font:inherit;padding:.45rem .6rem;border:1px solid #cfcfcf;border-radius:8px;background:#fafafa}
.skbk-cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}
.skbk-cal-title{font-size:1.15rem}
.skbk-cal-btn{display:inline-block;padding:.4rem .75rem;border:1px solid #cfcfcf;border-radius:8px;background:#fff;color:#111;text-decoration:none;font-size:.9rem}
.skbk-cal-btn:hover{border-color:#4b6bff;color:#4b6bff}
.skbk-cal{width:100%;border-collapse:separate;border-spacing:4px;table-layout:fixed}
.skbk-cal th{padding:.4rem 0;font-size:.85rem;color:#555;font-weight:600;text-align:center;background:transparent}
.skbk-cal-cell{vertical-align:top;height:70px;padding:.35rem;border-radius:8px;background:#f4f4f5;color:#333;font-size:.85rem}
.skbk-cal-cell a{display:block;height:100%;color:inherit;text-decoration:none}
.skbk-cal-day{font-weight:700;font-size:.95rem}
.skbk-cal-status{margin-top:.2rem;font-size:.72rem;letter-spacing:.02em;text-transform:uppercase}
.skbk-cal-out{visibility:hidden}
.skbk-cal-today{outline:2px solid #4b6bff}
.skbk-cal-available{background:#dcf5e4;color:#0a5a2b}
.skbk-cal-limited{background:#fff2cc;color:#8a5a00}
.skbk-cal-full{background:#f2d2d2;color:#7a1414}
.skbk-cal-closed{background:#f4f4f5;color:#999}
.skbk-cal-legend{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;font-size:.85rem;color:#555}
.skbk-cal-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:.35rem;vertical-align:middle}
@media(max-width:640px){.skbk-cal-cell{height:56px;font-size:.75rem;padding:.2rem}.skbk-cal-status{font-size:.65rem}}
