.accal{border:1px solid #e5e7eb;border-radius:12px;padding:10px;background:#fff;box-shadow:0 2px 10px rgba(0,0,0,.04);}
.accal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.accal-title{font-weight:700;color:#0a1e44}
.accal-nav{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px;cursor:pointer}
.accal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.accal-dow{font-size:12px;color:#6b7280;text-align:center;padding:4px}
.accal-cell{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:10px 0;text-align:center;cursor:pointer}
.accal-cell:hover{background:#eef2ff;border-color:#c7d2fe}
.accal-cell.muted{opacity:.45}
.accal-cell.selected{background:#1666d3;color:#fff;border-color:#1666d3}
/* time grid */
.ac-timegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:8px}
.ac-slot{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:10px;cursor:pointer;text-align:center;font-weight:600}
.ac-slot:hover{background:#eef2ff;border-color:#c7d2fe}
.ac-slot[disabled]{opacity:.4;cursor:not-allowed;text-decoration:line-through}
.ac-slot.selected{background:#1666d3;border-color:#1666d3;color:#fff}
/* confirmation modal */
.ac-modal{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;z-index:9999}
.ac-modal.open{display:flex}
.ac-modal-card{background:#fff;border-radius:16px;box-shadow:0 20px 80px rgba(0,0,0,.25);padding:22px;max-width:420px;width:92%}
.ac-modal-title{font-weight:800;font-size:18px;margin-bottom:10px;color:#0a1e44}
.ac-modal-row{margin:6px 0}
.ac-modal-actions{margin-top:14px;text-align:right}
.ac-btn-sec{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;padding:8px 12px;cursor:pointer}
