@import url(https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=DM+Mono:wght@400;500&display=swap);[data-loading*=\|show],[data-loading=""],[data-loading=show]{display:none}.btn-password-toggle:focus,.btn-password-toggle:focus-visible,.btn:focus,.btn:focus-visible,.form-check-input:focus,.form-control:focus,.form-select:focus{box-shadow:none;outline:none}.form-control,.form-select{border-color:var(--tblr-border-color);box-shadow:none;transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.form-control:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus){border-color:var(--tblr-secondary)}.form-control:focus,.form-select:focus{background-color:var(--tblr-bg-surface);border-color:var(--tblr-primary);box-shadow:inset 0 -2px 0 0 var(--tblr-primary)}.form-control:disabled,.form-select:disabled{background-color:var(--tblr-light);cursor:not-allowed;opacity:.65}.form-control.is-invalid,.form-select.is-invalid{background-image:none;border-color:var(--tblr-danger)}.form-control.is-invalid:focus,.form-select.is-invalid:focus{border-color:var(--tblr-danger);box-shadow:inset 0 -2px 0 0 var(--tblr-danger)}.form-label .form-required{color:var(--tblr-danger);font-size:.7rem;font-weight:700;margin-left:3px;vertical-align:super}.form-hint{align-items:center;color:var(--tblr-muted);display:flex;font-size:.8125rem;gap:.3rem;margin-top:.25rem}.form-hint .fa-circle-question{font-size:.8rem;opacity:.6}.invalid-feedback.d-block{align-items:center;color:var(--tblr-danger);display:flex!important;font-size:.8125rem;gap:.3rem;margin-top:.25rem}.invalid-feedback .fa-circle-exclamation{flex-shrink:0;font-size:.85rem}.btn-password-toggle{align-items:center;background:none;border:none;color:var(--tblr-muted);cursor:pointer;display:flex;justify-content:center;line-height:1;padding:0;transition:color .15s ease}.btn-password-toggle:hover{color:var(--tblr-body-color)}.input-group-flat{transition:border-color .18s ease,box-shadow .18s ease}.input-group-flat .form-control{border-right:none;box-shadow:none}.input-group-flat .form-control:hover:not(:disabled):not(:focus){border-color:var(--tblr-border-color)}.input-group-flat .input-group-text{background:var(--tblr-bg-surface);border-left:none;padding-inline:.75rem;transition:border-color .18s ease}.input-group-flat:focus-within .form-control,.input-group-flat:focus-within .input-group-text{border-color:var(--tblr-primary);box-shadow:none}.input-group-flat:focus-within .input-group-text{box-shadow:inset 0 -2px 0 0 var(--tblr-primary)}.input-group-flat:focus-within .form-control{box-shadow:inset 0 -2px 0 0 var(--tblr-primary)}.input-group-flat .form-control.is-invalid,.input-group-flat .form-control.is-invalid+.input-group-text{border-color:var(--tblr-danger)}.input-group-flat:focus-within .form-control.is-invalid,.input-group-flat:focus-within .form-control.is-invalid+.input-group-text{border-color:var(--tblr-danger);box-shadow:inset 0 -2px 0 0 var(--tblr-danger)}.form-check-input:focus{border-color:var(--tblr-primary);box-shadow:none}.form-check-input:checked{background-color:var(--tblr-primary);border-color:var(--tblr-primary)}.form-range:focus{box-shadow:none;outline:none}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 3px rgba(var(--tblr-primary-rgb),.15)}.tabler-collection-item{border-radius:var(--tblr-border-radius);transition:background .15s ease}.tabler-collection-item:hover{background-color:var(--tblr-light)}.tabler-collection-item .btn-ghost-danger{opacity:0;transition:opacity .15s ease}.tabler-collection-item:hover .btn-ghost-danger{opacity:1}:root{--fc-bg:#fff;--fc-border-color:#f0f0f0;--fc-today-bg:#f0f6ff;--fc-today-accent:#2463eb;--fc-text-primary:#1a1a2e;--fc-text-muted:#9a9ab0;--fc-header-bg:#fff;--fc-event-border-radius:6px;--fc-toolbar-gap:12px;--fc-shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04)}.calendar-wrapper{background:var(--fc-bg);border-radius:16px;box-shadow:0 4px 24px rgba(0,0,0,.06);font-family:DM Sans,sans-serif;overflow:hidden}.fc .fc-toolbar{background:var(--fc-header-bg);border-bottom:1px solid var(--fc-border-color);flex-wrap:wrap;gap:var(--fc-toolbar-gap);margin-bottom:0!important;padding:20px 24px 16px}.fc .fc-toolbar-title{color:var(--fc-text-primary);font-family:DM Sans,sans-serif;font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.fc .fc-button{background:#fff!important;border:1px solid var(--fc-border-color)!important;border-radius:8px!important;box-shadow:var(--fc-shadow)!important;color:var(--fc-text-primary)!important;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:500;letter-spacing:0;padding:6px 14px!important;text-transform:none;transition:all .15s ease}.fc .fc-button:hover{background:#f5f7ff!important;border-color:#c8d5f5!important;box-shadow:0 2px 8px rgba(36,99,235,.1)!important;color:var(--fc-today-accent)!important}.fc .fc-button:focus{box-shadow:0 0 0 3px rgba(36,99,235,.15)!important}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background:var(--fc-today-accent)!important;border-color:var(--fc-today-accent)!important;box-shadow:0 2px 8px rgba(36,99,235,.25)!important;color:#fff!important}.fc .fc-next-button,.fc .fc-prev-button{padding:6px 10px!important}.fc .fc-icon{font-size:1rem!important}.fc .fc-button-group{background:#f5f5f8;border:none!important;border-radius:10px!important;gap:4px;padding:3px}.fc .fc-button-group .fc-button{background:transparent!important;border:none!important;border-radius:7px!important;box-shadow:none!important;color:var(--fc-text-muted)!important}.fc .fc-button-group .fc-button:hover{background:hsla(0,0%,100%,.7)!important;color:var(--fc-text-primary)!important}.fc .fc-button-group .fc-button-active{background:#fff!important;box-shadow:0 1px 4px rgba(0,0,0,.1)!important;color:var(--fc-today-accent)!important}.fc .fc-col-header{background:var(--fc-header-bg)}.fc .fc-col-header-cell{border-color:var(--fc-border-color)!important;padding:10px 0!important}.fc .fc-col-header-cell-cushion{color:var(--fc-text-muted);font-family:DM Sans,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.06em;padding:4px 8px;text-decoration:none!important;text-transform:uppercase}.fc .fc-daygrid-day,.fc .fc-timegrid-slot{border-color:var(--fc-border-color)!important}.fc .fc-daygrid-day-frame{min-height:90px}.fc .fc-daygrid-day-number{border-radius:8px;color:var(--fc-text-muted);font-family:DM Mono,monospace;font-size:.8125rem;font-weight:500;line-height:1;padding:8px 10px!important;text-decoration:none!important;transition:all .15s ease}.fc .fc-daygrid-day-number:hover{background:rgba(36,99,235,.06);color:var(--fc-today-accent)}.fc .fc-day-today{background:var(--fc-today-bg)!important}.fc .fc-day-today .fc-daygrid-day-number{color:var(--fc-today-accent)!important;font-weight:600}.fc .fc-timegrid-now-indicator-line{border-color:var(--fc-today-accent)!important;border-width:2px!important}.fc .fc-timegrid-now-indicator-arrow{border-bottom-color:var(--fc-today-accent)!important;border-top-color:var(--fc-today-accent)!important}.fc .fc-timegrid-slot-label-cushion{color:var(--fc-text-muted);font-family:DM Mono,monospace;font-size:.6875rem;font-weight:500;letter-spacing:.02em}.fc .fc-event{border:none!important;border-radius:var(--fc-event-border-radius)!important;cursor:pointer;font-family:DM Sans,sans-serif;font-size:.75rem!important;font-weight:500!important;padding:2px 0!important;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.fc .fc-event:hover{box-shadow:0 4px 12px rgba(0,0,0,.15)!important;filter:brightness(1.05);transform:translateY(-1px) scale(1.01);z-index:10}.fc .fc-event-main{padding:3px 8px!important}.fc .fc-event-time{font-family:DM Mono,monospace;font-size:.6875rem!important;font-weight:500;opacity:.85}.fc .fc-event-title{font-weight:500;letter-spacing:-.01em}.fc .fc-daygrid-event{border-radius:5px!important;margin:1px 4px!important}.fc .fc-daygrid-dot-event{padding:2px 4px!important}.fc .fc-daygrid-event-dot{border-color:currentColor!important}.fc .fc-daygrid-more-link{border-radius:4px;color:var(--fc-today-accent);font-family:DM Sans,sans-serif;font-size:.7rem;font-weight:600;padding:1px 6px;transition:background .15s}.fc .fc-daygrid-more-link:hover{background:rgba(36,99,235,.08);text-decoration:none}.fc .fc-popover{border:none!important;border-radius:12px!important;box-shadow:0 8px 32px rgba(0,0,0,.12),0 2px 8px rgba(0,0,0,.08)!important;overflow:hidden}.fc .fc-popover-header{background:var(--fc-text-primary)!important;color:#fff!important;font-family:DM Sans,sans-serif;font-size:.8125rem;font-weight:600;padding:10px 14px!important}.fc .fc-popover-close{color:hsla(0,0%,100%,.7)!important;font-size:1.1rem!important}.fc .fc-popover-body{background:#fff;padding:8px!important}.fc-scroller::-webkit-scrollbar{width:4px}.fc-scroller::-webkit-scrollbar-track{background:transparent}.fc-scroller::-webkit-scrollbar-thumb{background:#e0e0e8;border-radius:99px}.fc-scroller::-webkit-scrollbar-thumb:hover{background:#c0c0d0}.fc .fc-week-number{color:var(--fc-text-muted);font-family:DM Mono,monospace;font-size:.6875rem}.fc .fc-highlight{background:rgba(36,99,235,.07)!important}.calendar-pane,.detail-pane{transition:all .25s cubic-bezier(.4,0,.2,1)}.detail-pane{background:#fafafa;border-left:1px solid var(--fc-border-color)}.detail-pane-header{align-items:center;border-bottom:1px solid var(--fc-border-color);display:flex;justify-content:space-between;padding:20px 20px 16px}.detail-pane-header h5{color:var(--fc-text-primary);font-family:DM Sans,sans-serif;font-size:.9375rem;font-weight:600;letter-spacing:-.02em;margin:0}.detail-close-btn{align-items:center;background:#fff;border:1px solid var(--fc-border-color);border-radius:8px;color:var(--fc-text-muted);cursor:pointer;display:flex;font-size:.875rem;height:28px;justify-content:center;line-height:1;transition:all .15s ease;width:28px}.detail-close-btn:hover{background:#fff0f0;border-color:#fca5a5;color:#ef4444}.swatch-group{display:flex;flex-wrap:wrap;gap:6px}.swatch-label{cursor:pointer;margin:0}.swatch-radio{display:none}.swatch{border:2px solid transparent;border-radius:50%;display:block;height:22px;transition:transform .12s ease,border-color .12s ease;width:22px}.swatch-label:hover .swatch{transform:scale(1.15)}.swatch-radio:checked+.swatch{border-color:#fff;box-shadow:0 0 0 2px currentColor;transform:scale(1.15)}dialog{border:none;max-width:50%;min-width:50%;padding:0}dialog.modal-sm{max-width:30%;min-width:30%}dialog::backdrop{background:rgba(0,0,0,.5)}@media(max-width:768px){dialog,dialog.modal-sm{max-width:100%;min-width:100%}}