.slots-calendar{position:relative;padding:.75rem;border-radius:16px;border:1px solid rgba(var(--primary-color-rgb),.12);background:#fff;box-shadow:inset 0 1px 0 hsla(0,0%,100%,.75),0 4px 14px rgba(15,23,42,.04)}.slots-calendar__loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:hsla(0,0%,100%,.75);border-radius:16px;z-index:2}.slots-calendar__empty{padding:1.5rem 0}.slots-calendar .rbc-calendar{font-family:DM Sans,sans-serif}.slots-calendar .rbc-month-view{border:1px solid rgba(var(--primary-color-rgb),.1);border-radius:12px;overflow:hidden;background:#fff}.slots-calendar .rbc-day-bg,.slots-calendar .rbc-header,.slots-calendar .rbc-month-row,.slots-calendar .rbc-row-bg{border-color:rgba(var(--primary-color-rgb),.08)}.slots-calendar .rbc-off-range-bg{background:rgba(var(--primary-color-rgb),.025)}.slots-calendar .rbc-today{background-color:rgba(var(--primary-color-rgb),.08)}.slots-calendar .rbc-event{cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.slots-calendar .rbc-event:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.14)!important}.slots-calendar .rbc-header{padding:.5rem .3rem;font-weight:600;font-size:.74rem;color:var(--medium-gray);text-transform:capitalize;letter-spacing:.02em;background:linear-gradient(180deg,rgba(var(--primary-color-rgb),.06),rgba(var(--primary-color-rgb),.02))}.slots-calendar .rbc-date-cell{padding:.35rem .45rem;font-size:.8rem;color:var(--text-color)}.slots-calendar .rbc-date-cell a{color:inherit;text-decoration:none}.slots-calendar .rbc-date-cell.rbc-now{font-weight:700}.slots-calendar .rbc-date-cell.rbc-now a{color:var(--primary-color)}.slots-calendar .rbc-toolbar{font-size:.85rem;margin-bottom:.85rem}.slots-calendar .rbc-toolbar button{border-radius:10px;border:1px solid var(--border-color);background:#fff;color:var(--text-color);font-weight:500;padding:.35rem .75rem}.slots-calendar .rbc-toolbar button:focus,.slots-calendar .rbc-toolbar button:hover{border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.06);color:var(--primary-color)}.slots-calendar .rbc-toolbar button.rbc-active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.slots-calendar .rbc-toolbar-label{font-weight:700;font-size:.95rem;text-transform:capitalize;color:var(--text-color)}.plan-cal-updated-note{display:inline-flex;align-items:center;gap:var(--space-xs,3px);padding:var(--space-xs,3px) var(--space-sm,6px);border-radius:999px;background:rgba(var(--primary-color-rgb),.06);color:var(--primary-color);font-size:var(--font-xs,10.5px);font-weight:600}.plan-layout-calendar-card{display:flex;flex-direction:column;gap:var(--space-sm,6px);padding:var(--space-md,12px)}.plan-layout-calendar-card .plan-cal-header{display:flex;align-items:center;gap:var(--space-sm,6px)}.plan-layout-calendar-card .plan-cal-header .plan-cal-header-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:10px;background:rgba(var(--primary-color-rgb),.08)}.plan-layout-calendar-card .plan-cal-header .plan-cal-header-copy{display:flex;flex-direction:column;flex:1 1;min-width:0}.plan-layout-calendar-card .plan-cal-header .plan-cal-header-copy .plan-cal-label{font-size:var(--font-xs,10.5px);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--medium-gray)}.plan-layout-calendar-card .plan-cal-header .plan-cal-header-copy h4{margin:0;font-size:var(--font-md,14px);font-weight:700;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-layout-calendar-card .plan-cal-helper{margin:0;font-size:var(--font-sm,12.5px);color:var(--medium-gray)}.plan-layout-calendar-card .plan-cal-legend{display:flex;flex-wrap:wrap;gap:var(--space-xs,3px) var(--space-md,12px);padding:var(--space-xs,3px) 0}.plan-layout-calendar-card .plan-cal-legend .plan-cal-legend-item{display:inline-flex;align-items:center;gap:var(--space-xs,3px);font-size:var(--font-xs,10.5px)}.plan-layout-calendar-card .plan-cal-legend .plan-cal-legend-item .plan-cal-legend-swatch{width:11px;height:11px;border-radius:4px;flex-shrink:0}.plan-layout-calendar-card .plan-cal-legend .plan-cal-legend-item .plan-cal-legend-name{font-weight:600;color:var(--text-color)}.plan-layout-calendar-card .plan-cal-legend .plan-cal-legend-item .plan-cal-legend-count{color:var(--medium-gray);font-weight:500}.plan-layout-calendar-card .plan-cal-warnings{display:flex;flex-direction:column;gap:var(--space-xs,3px);padding:var(--space-sm,6px) var(--space-md,12px);border-radius:var(--border-radius);background:rgba(var(--warning-color-rgb,245,158,11),.08);border:1px solid rgba(var(--warning-color-rgb,245,158,11),.22)}.plan-layout-calendar-card .plan-cal-warnings .plan-cal-warnings-header{display:flex;align-items:center;gap:var(--space-xs,3px);font-size:var(--font-sm,12.5px);color:var(--warning-color)}.plan-layout-calendar-card .plan-cal-warnings .plan-cal-warnings-list{margin:0;padding-left:var(--space-lg,18px)}.plan-layout-calendar-card .plan-cal-warnings .plan-cal-warnings-list li{font-size:var(--font-xs,10.5px);color:var(--text-color);line-height:1.5}.plan-layout-calendar-card .plan-cal-calendar{padding:var(--space-sm,6px);width:100%;min-width:0;align-self:stretch}.plan-layout-calendar-card .plan-cal-calendar .rbc-calendar,.plan-layout-calendar-card .plan-cal-calendar .rbc-month-row,.plan-layout-calendar-card .plan-cal-calendar .rbc-month-view,.plan-layout-calendar-card .plan-cal-calendar .rbc-row-bg{width:100%!important}.plan-layout-calendar-card .plan-cal-calendar .plan-cal-event-inner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-layout-calendar-card .plan-cal-selection{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm,6px);padding:var(--space-sm,6px) var(--space-md,12px);border-radius:var(--border-radius);background:rgba(var(--primary-color-rgb),.05);border:1px solid rgba(var(--primary-color-rgb),.14)}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-info{display:flex;align-items:center;gap:var(--space-sm,6px);min-width:0}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-info .plan-cal-selection-dot{width:12px;height:12px;border-radius:4px;flex-shrink:0}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-info .plan-cal-selection-text{display:flex;flex-direction:column;min-width:0}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-info .plan-cal-selection-text strong{font-size:var(--font-sm,12.5px);color:var(--text-color)}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-info .plan-cal-selection-text span{font-size:var(--font-xs,10.5px);color:var(--medium-gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.plan-layout-calendar-card .plan-cal-selection .plan-cal-selection-actions{display:flex;gap:var(--space-xs,3px);flex-shrink:0}.plan-layout-calendar-card .plan-cal-lock-note{display:flex;align-items:center;gap:var(--space-xs,3px);font-size:var(--font-xs,10.5px);color:var(--medium-gray)}.plan-layout-calendar-card .plan-cal-lock-note .plan-cal-lock-glyph{font-size:14px;color:var(--primary-color)}.plan-layout-calendar-card .plan-cal-results{display:flex;flex-direction:column;gap:var(--space-xs,3px)}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-summary{font-size:var(--font-sm,12.5px);font-weight:600;color:var(--text-color)}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-row{display:flex;align-items:center;gap:var(--space-sm,6px);padding:var(--space-xs,3px) var(--space-sm,6px);border:1px solid var(--border-color);border-left-width:4px;border-radius:var(--border-radius);background:#fff;font-size:var(--font-xs,10.5px)}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-row.success{border-left-color:var(--success-color)}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-row.failure{border-left-color:var(--danger-color)}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-row .plan-cal-results-label{display:flex;flex-direction:column;text-transform:capitalize}.plan-layout-calendar-card .plan-cal-results .plan-cal-results-row .plan-cal-results-label .plan-cal-results-error{color:var(--danger-color);text-transform:none}.plan-layout-calendar-card .plan-cal-footer{justify-content:space-between}.plan-layout-calendar-card .plan-cal-footer,.plan-layout-calendar-card .plan-cal-footer .plan-cal-footer-secondary{display:flex;align-items:center;gap:var(--space-md,12px);flex-wrap:wrap}.plan-layout-calendar-card .plan-cal-footer .plan-cal-reset{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(0,0,0,0);border:none;padding:0;font-size:var(--font-xs,10.5px);font-weight:600;color:var(--primary-color);cursor:pointer;text-decoration:underline}.plan-layout-calendar-card .plan-cal-footer .plan-cal-reset:hover{opacity:.8}.plan-layout-calendar-card .plan-cal-footer .plan-cal-reset.plan-cal-clear{color:var(--danger-color)}.plan-layout-calendar-card .plan-cal-footer .plan-cal-footer-confirm{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-xs,3px);margin-left:auto}.plan-layout-calendar-card .plan-cal-footer .plan-cal-footer-confirm .plan-cal-footer-sub{font-size:var(--font-xs,10.5px);color:var(--medium-gray)}.plan-cal-day-picker-modal{z-index:1075!important}.plan-cal-day-picker-modal .modal-dialog{z-index:1076!important}.plan-cal-day-picker-modal .modal-backdrop{z-index:1074!important}.plan-cal-day-picker-modal .modal-title{font-size:var(--font-lg,16px);text-transform:capitalize}.plan-cal-day-picker-modal .plan-cal-day-modes{display:flex;flex-direction:column;gap:var(--space-sm,6px);align-items:flex-start}.plan-cal-day-picker-modal .plan-cal-day-hint{margin:0;font-size:var(--font-sm,12.5px);color:var(--medium-gray)}.plan-cal-day-picker-modal .plan-cal-day-empty{margin:var(--space-sm,6px) 0 0;font-size:var(--font-sm,12.5px);color:var(--medium-gray)}.plan-cal-day-picker-modal .plan-cal-chip-pick{display:flex;flex-direction:column;gap:var(--space-sm,6px)}.plan-cal-day-picker-modal .plan-cal-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-sm,6px)}.plan-cal-day-picker-modal .plan-cal-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:var(--space-xs,3px);padding:var(--space-xs,3px) var(--space-sm,6px);border-radius:999px;border:1px solid var(--border-color);background:#fff;font-size:var(--font-sm,12.5px);font-weight:600;color:var(--text-color);cursor:pointer;transition:background .15s ease,transform .15s ease}.plan-cal-day-picker-modal .plan-cal-chip .plan-cal-chip-swatch{width:10px;height:10px;border-radius:3px}.plan-cal-day-picker-modal .plan-cal-chip:hover{background:rgba(var(--primary-color-rgb),.05);transform:translateY(-1px)}.plan-cal-day-picker-modal .plan-cal-day-slots-wrap{margin-top:var(--space-sm,6px)}.plan-cal-day-picker-modal .plan-cal-day-loading{display:flex;justify-content:center;padding:var(--space-md,12px) 0}.plan-cal-day-picker-modal .plan-cal-day-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:var(--space-sm,6px);gap:var(--space-sm,6px)}.plan-cal-day-picker-modal .plan-cal-day-slot{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:var(--space-sm,6px);cursor:pointer;display:flex;flex-direction:column;gap:var(--space-xs,3px);align-items:flex-start;transition:border-color .15s ease,background .15s ease,transform .15s ease}.plan-cal-day-picker-modal .plan-cal-day-slot:hover{border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.04);transform:translateY(-1px)}.plan-cal-day-picker-modal .plan-cal-day-slot .plan-cal-day-slot-time{font-size:var(--font-lg,16px);font-weight:700}.plan-cal-day-picker-modal .plan-cal-day-slot .plan-cal-day-slot-meta{font-size:var(--font-xs,10.5px);color:var(--medium-gray)}.plan-cal-day-picker-modal .plan-cal-chip-add{border-style:dashed;color:var(--primary-color)}.plan-cal-event-pop{z-index:3000}.plan-cal-event-pop .popover-body{display:flex;flex-direction:column;gap:var(--space-xs,3px);padding:var(--space-sm,8px) var(--space-md,12px)}.plan-cal-event-pop .plan-cal-event-pop-service{display:inline-flex;align-items:center;gap:var(--space-xs,4px);font-weight:700;font-size:var(--font-sm,12.5px);color:var(--text-color)}.plan-cal-event-pop .plan-cal-event-pop-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.plan-cal-event-pop .plan-cal-event-pop-row{display:inline-flex;align-items:center;gap:var(--space-xs,4px);font-size:var(--font-xs,11px);color:var(--medium-gray);text-transform:capitalize}.plan-cal-event-pop .plan-cal-event-pop-loc{text-transform:none}