.dnxte-calendar-events .calendar-container{position:relative;min-height:400px}.dnxte-calendar-events .calendar-container table,.dnxte-calendar-events .calendar-container table tbody,.dnxte-calendar-events .calendar-container table thead{border-collapse:separate!important;border-spacing:0!important;margin:0!important}.dnxte-calendar-events .calendar-container table:not(.fc-scrollgrid){border:none!important}.dnxte-calendar-events .calendar-container td:not([role=gridcell]),.dnxte-calendar-events .calendar-container th:not(.fc-col-header-cell){border-width:0!important;padding:0!important}.dnxte-calendar-events .calendar-container .fc-col-header-cell,.dnxte-calendar-events .calendar-container .fc-daygrid-day,.dnxte-calendar-events .calendar-container .fc-scrollgrid{border-color:var(--fc-border-color,#ddd)!important}.dnxte-calendar-events .calendar-container .fc-toolbar{background-color:var(--dnxte-calendar-header-bg,transparent)!important}.dnxte-calendar-events .calendar-container .fc-col-header,.dnxte-calendar-events .calendar-container .fc-col-header-cell{background-color:var(--dnxte-calendar-day-header-bg,transparent)!important}.dnxte-calendar-events .dnxte-calendar-filter{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px;flex-wrap:wrap}.dnxte-calendar-events .dnxte-calendar-filter-label{font-size:12px;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin-right:4px}.dnxte-calendar-events .dnxte-calendar-filter-item{display:flex;align-items:center;gap:6px;cursor:pointer;user-select:none}.dnxte-calendar-events .dnxte-calendar-filter-checkbox{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:2px solid var(--filter-color,#6366f1);border-radius:4px;cursor:pointer;position:relative;transition:.15s;flex-shrink:0}.dnxte-calendar-events .dnxte-calendar-filter-checkbox:checked{background:var(--filter-color,#6366f1);border-color:var(--filter-color,#6366f1)}.dnxte-calendar-events .dnxte-calendar-filter-checkbox:checked::after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:11px;font-weight:700}.dnxte-calendar-events .dnxte-calendar-filter-text{font-size:13px;font-weight:500;color:#334155}.dnxte-calendar-events .dnxte-fc-event-content{display:flex;align-items:center;gap:4px;overflow:hidden;width:100%}.dnxte-calendar-events .dnxte-fc-event-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.dnxte-calendar-events .dnxte-fc-event-time{font-size:11px;font-weight:500;flex-shrink:0;opacity:.9}.dnxte-calendar-events .dnxte-fc-event-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.dnxte-calendar-events .calendar-events-list{margin-top:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.dnxte-calendar-events .calendar-events-list-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.dnxte-calendar-events .calendar-events-list-title{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.dnxte-calendar-events .calendar-events-list-count{font-size:11px;font-weight:600;color:#3b82f6;background:#eff6ff;padding:2px 8px;border-radius:10px}.dnxte-calendar-events .calendar-events-list-items{padding:8px}.calendar-event-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:999999;backdrop-filter:blur(4px)}.calendar-event-modal{background:#fff;border-radius:12px;width:420px;max-width:90vw;box-shadow:0 20px 60px rgba(0,0,0,.15);overflow:hidden;animation:.2s ease-out calModalFadeIn}@keyframes calModalFadeIn{from{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.calendar-event-modal-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #e2e8f0}.calendar-event-modal-color{width:4px;height:28px;border-radius:2px;flex-shrink:0}.calendar-event-modal-title{flex:1;font-size:16px;font-weight:600;color:#1e293b;margin:0}.calendar-event-modal-close{width:28px;height:28px;border:none;background:#f1f5f9;border-radius:6px;font-size:18px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}.calendar-event-modal-close:hover{background:#e2e8f0;color:#1e293b}.calendar-event-modal-body{padding:16px 20px;max-height:60vh;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.calendar-event-modal-body::-webkit-scrollbar{display:none;width:0;height:0}.calendar-event-modal-row{display:flex;gap:12px;padding:8px 0}.calendar-event-modal-row+.calendar-event-modal-row{border-top:1px solid #f1f5f9}.calendar-event-modal-label{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;min-width:80px;padding-top:2px}.calendar-event-modal-value{font-size:13px;color:#334155;flex:1;word-break:break-word}.calendar-event-modal-link{font-size:13px;color:#3b82f6;text-decoration:none;word-break:break-all}.calendar-event-modal-link:hover{text-decoration:underline}.calendar-event-modal-category-badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 10px;border-radius:10px;text-transform:capitalize}.dnxte-calendar-events-item .calendar-event-card{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;background:#fff;border:1px solid #e2e8f0;transition:.2s}.dnxte-calendar-events-item .calendar-event-card:hover{border-color:#3b82f6;box-shadow:0 1px 4px rgba(59,130,246,.1)}.dnxte-calendar-events-item .calendar-event-card-color{width:4px;height:32px;border-radius:2px;flex-shrink:0}.dnxte-calendar-events-item .calendar-event-card-info{flex:1;min-width:0}.dnxte-calendar-events-item .calendar-event-card-title{font-size:13px;font-weight:500;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dnxte-calendar-events-item .calendar-event-card-date{font-size:11px;color:#64748b;margin-top:2px}.dnxte-calendar-events-item .calendar-event-card-category{font-size:10px;font-weight:600;padding:2px 8px;border-radius:8px;text-transform:capitalize;flex-shrink:0}