/* EE styles - unchanged from 1.1.0 */
.sac-wrap h1, .sac-wrap h2 { font-weight: 600; }
.sac-row { margin-bottom: 12px; display:flex; gap:12px; align-items: flex-start; }
.sac-row label { width: 180px; font-weight: 600; padding-top:6px; }
.sac-row input[type="date"] { padding:6px 8px; }
.sac-row textarea { width: 100%; }
.sac-actions { margin-top: 10px; }

.sac-table th, .sac-table td { vertical-align: middle; }

/* Frontend */
.sac-calendar { border: 1px solid #ddd; border-radius: 14px; padding: 12px; max-width: 680px; background: #fff; box-shadow: 0 6px 20px rgba(0,0,0,0.06); }
.sac-cal-head { display:flex; align-items:center; justify-content:space-between; margin-bottom: 8px; }
.sac-title { font-weight: 700; font-size: 18px; text-transform: capitalize; }
.sac-nav { background: #f7f7f7; border: 1px solid #e5e5e5; padding: 4px 10px; border-radius: 8px; cursor: pointer; }
.sac-weekdays { display:grid; grid-template-columns: repeat(7, 1fr); gap:6px; margin: 6px 0; font-weight: 600; color: #666; text-align:center; }
.sac-weekdays > div { padding: 6px 0; }
.sac-grid { display:grid; grid-template-columns: repeat(7, 1fr); gap:6px; }
.sac-cell { position:relative; min-height: 62px; background:#fafafa; border:1px solid #eee; border-radius:12px; padding: 8px; }
.sac-cell.sac-empty { background: transparent; border: none; }
.sac-day { position:absolute; top:6px; right:8px; font-size: 12px; color:#777; }
.sac-free { background: #e6f7f0 !important; border-color:#ccefe0 !important; }
.sac-busy { background: #fdeaea !important; border-color:#f6d3d3 !important; }
.sac-mixed { background: #fff7e6 !important; border-color:#ffe1b8 !important; }
.sac-clickable { cursor:pointer; transition: transform 0.06s ease; }
.sac-clickable:hover { transform: scale(1.01); }

.sac-legend { display:flex; align-items:center; gap:14px; margin-top:10px; font-size: 13px; color:#555; }
.sac-dot { display:inline-block; width: 12px; height: 12px; border-radius: 50%; margin-right: 6px; vertical-align: middle; }
.sac-dot.sac-free { background:#34c285; }
.sac-dot.sac-busy { background:#e14646; }
.sac-dot.sac-mixed { background:#f0a500; }

/* Modal */
.sac-modal { position: fixed; inset: 0; background: rgba(0,0,0,0.35); display:flex; align-items:center; justify-content:center; z-index: 999999; }
.sac-modal-content { background:#fff; border-radius:14px; padding:18px; width: min(560px, 92vw); box-shadow: 0 10px 30px rgba(0,0,0,0.2); position:relative; }
.sac-close { position:absolute; right:10px; top:8px; border:none; background:#f5f5f5; border-radius:8px; padding:4px 8px; cursor:pointer; }
.sac-modal-date { margin-top: 0; }
.sac-slots-list { list-style: none; padding-left:0; display:grid; gap:8px; }
.sac-pill { display:inline-block; padding:2px 8px; border-radius:999px; font-size: 12px; margin-right: 8px; text-transform: none; }
.sac-pill-free { background:#e6f7f0; border:1px solid #ccefe0; }
.sac-pill-busy { background:#fdeaea; border:1px solid #f6d3d3; }
