.wcls-widget{max-width:820px;margin:0 auto;background:#fff;border:1px solid #eee;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.05);padding:16px}
.wcls-head h3{margin:0 0 4px;font-size:20px}
.wcls-calendar{border:1px solid #eef2f7;border-radius:12px;padding:12px}
.wcls-month{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.wcls-prev,.wcls-next{border:1px solid #e5e7eb;background:#fafafa;border-radius:10px;padding:6px 10px;cursor:pointer;color:black}
.wcls-grid{display:flex;flex-direction:column;gap:6px}
.wcls-row{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.wcls-head-row{font-weight:600;color:#6b7280}
.wcls-cell{height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:10px;background:#fff;cursor:pointer}
.wcls-cell:hover{background:#f5f7fa}
.wcls-cell.muted{background:#fafafa;color:#9ca3af;cursor:default}
.wcls-times{margin-top:16px;border:1px solid #eef2f7;border-radius:12px;padding:12px}
.wcls-date-picked{font-weight:600;margin-bottom:8px}
.wcls-slot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}
.wcls-slot{border:1px solid #e5e7eb;border-radius:12px;background:#f9fafb;padding:10px;cursor:pointer;color:#54595F}
.wcls-slot:hover{background:#f3f4f6;color:#54595F}
.wcls-loading,.wcls-empty{padding:12px;border:1px dashed #cbd5e1;border-radius:10px;text-align:center;background:#f8fafc}
.wcls-cell.no-slots {opacity: 0.5;background-color: #f0f0f0;pointer-events: none;}