.ceus-calendar{--ceus-calendar-navy:#142640;--ceus-calendar-blue:#2864dc;--ceus-calendar-line:#e3e9f1;--ceus-calendar-muted:#66758a;color:var(--ceus-calendar-navy);font-family:inherit;background:#fff;border:1px solid var(--ceus-calendar-line);border-radius:18px;overflow:hidden;box-shadow:0 4px 20px #14264004}
.ceus-calendar *,.ceus-calendar-dialog *{box-sizing:border-box}.ceus-calendar button,.ceus-calendar input,.ceus-calendar select,.ceus-calendar-dialog button,.ceus-calendar-dialog input,.ceus-calendar-dialog select{font:inherit}.ceus-calendar button,.ceus-calendar-dialog button{cursor:pointer}.ceus-calendar button:focus-visible,.ceus-calendar input:focus-visible,.ceus-calendar select:focus-visible,.ceus-calendar-dialog button:focus-visible,.ceus-calendar-dialog input:focus-visible,.ceus-calendar-dialog select:focus-visible{outline:3px solid #89b1ff;outline-offset:2px}.ceus-calendar button:disabled,.ceus-calendar-dialog button:disabled{cursor:not-allowed;opacity:.55}.ceus-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 26px 22px}.ceus-calendar-eyebrow{margin:0 0 6px;color:#526b8e;font-size:11px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.ceus-calendar-heading h2{margin:0;font-size:23px;letter-spacing:-.045em;line-height:1.2;font-weight:700}.ceus-calendar-subtitle{margin:7px 0 0;color:var(--ceus-calendar-muted);font-size:13px}.ceus-calendar-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ceus-calendar-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 13px;border:1px solid #dce4ee;border-radius:8px;color:#304560;background:#fff;font-size:12px;font-weight:650;line-height:1.3;text-decoration:none;white-space:nowrap}.ceus-calendar-button:hover{background:#f3f6fb;border-color:#bdcce0}.ceus-calendar-primary{color:#fff;background:var(--ceus-calendar-blue,#2864dc);border-color:var(--ceus-calendar-blue,#2864dc)}.ceus-calendar-primary:hover{background:#1b53c2;border-color:#1b53c2}.ceus-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 26px;border-top:1px solid var(--ceus-calendar-line);border-bottom:1px solid var(--ceus-calendar-line);background:#fcfdff}.ceus-calendar-navigation{display:flex;align-items:center;gap:6px}.ceus-calendar-arrow{display:grid;place-items:center;width:34px;height:36px;padding:0;border:1px solid #e0e6f0;border-radius:8px;background:#fff;color:#304560;font-size:26px;line-height:1}.ceus-calendar-arrow:hover{background:#edf3fd}.ceus-calendar-date-label input{height:36px;max-width:142px;padding:7px 9px;border:1px solid #e0e6f0;border-radius:8px;background:#fff;color:#304560;font-size:12px}.ceus-calendar-period{font-size:14px;text-transform:capitalize;text-align:center;letter-spacing:-.025em}.ceus-calendar-switch{display:inline-flex;gap:3px;padding:3px;border:1px solid #dce4ee;border-radius:9px;background:#f0f4fa}.ceus-calendar-switch button{min-width:62px;min-height:30px;border:0;border-radius:6px;background:transparent;color:#5b6d86;font-size:12px;font-weight:650}.ceus-calendar-switch button[aria-pressed=true]{background:#fff;color:#1f52a8;box-shadow:0 1px 4px #14264012}.ceus-calendar-filters{display:flex;align-items:end;gap:14px;padding:18px 26px 15px}.ceus-calendar-filters label{display:flex;flex-direction:column;gap:7px;min-width:145px;color:#5d6c81;font-size:11px;font-weight:650}.ceus-calendar-filters select,.ceus-calendar-filters input{width:100%;height:38px;padding:8px 11px;border:1px solid #dfe6ef;border-radius:8px;color:#304560;background:#fff;font-size:12px;font-weight:450}.ceus-calendar-search{flex:1}.ceus-calendar-search input::placeholder{color:#6b788b}.ceus-calendar-hours{font-size:11px}.ceus-calendar-meta{display:flex;justify-content:space-between;gap:12px;padding:0 26px 15px;color:var(--ceus-calendar-muted);font-size:11px}.ceus-calendar-zone{white-space:nowrap}.ceus-calendar-notice{margin:0 25px 16px;padding:12px 14px;border:1px solid #edd5b0;border-radius:8px;color:#805216;background:#fff8e9;font-size:12px;line-height:1.5}.ceus-calendar-notice[data-kind=success]{border-color:#b9dfd5;color:#236458;background:#edf9f4}.ceus-calendar-notice[hidden]{display:none}.ceus-calendar-canvas{position:relative;border-top:1px solid var(--ceus-calendar-line)}.ceus-calendar-scroll{max-height:620px;min-height:320px;overflow:auto;overscroll-behavior:contain;scrollbar-color:#c3cede #f5f7fb;scrollbar-width:thin}.ceus-calendar-grid{display:grid;grid-template-columns:54px repeat(var(--ceus-calendar-columns),minmax(var(--ceus-calendar-column-min),1fr));min-width:100%;isolation:isolate}.ceus-calendar-hour-heading,.ceus-calendar-column-heading{position:sticky;top:0;z-index:4;min-height:75px;padding:12px 10px;border-bottom:1px solid #dce5f0;background:#f9fbfe}.ceus-calendar-hour-heading{left:0;z-index:6;display:flex;align-items:center;justify-content:center;color:#6f8097;font-size:10px;font-weight:650}.ceus-calendar-column-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-left:1px solid var(--ceus-calendar-line);text-align:center}.ceus-calendar-column-heading>span{font-size:10px;color:#637189;text-transform:capitalize}.ceus-calendar-column-heading>strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;letter-spacing:-.035em}.ceus-calendar-column-heading>small{font-size:9px;color:#66758a}.ceus-calendar-is-today{background:#edf4ff}.ceus-calendar-is-today>strong{color:#245cc3}.ceus-calendar-time-axis{position:sticky;left:0;z-index:3;background:#fff;border-right:1px solid var(--ceus-calendar-line)}.ceus-calendar-time-axis>div{padding:5px 6px 0 0;text-align:right;color:#66758a;font-size:9px;font-variant-numeric:tabular-nums}.ceus-calendar-lane{position:relative;min-width:0;border-left:1px solid var(--ceus-calendar-line);background:#fff}.ceus-calendar-slot{display:block;width:100%;margin:0;padding:0;border:0;border-bottom:1px solid #f0f3f8;border-radius:0;background:transparent}.ceus-calendar-slot:nth-child(even){border-bottom-color:#e5eaf2}.ceus-calendar-slot:hover,.ceus-calendar-slot:focus-visible{background:#eef4ff}.ceus-calendar-slot:focus-visible{outline-offset:-3px}.ceus-calendar-drop-target{background:#dceaff!important;box-shadow:inset 0 0 0 2px #6c9bee}.ceus-calendar-event{position:absolute;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;min-height:28px;margin:0;padding:7px 8px;border:1px solid #bfd3f7;border-left:3px solid #4176d9;border-radius:6px;overflow:hidden;background:#eef4ff;color:#224c94;text-align:left;box-shadow:0 1px 2px #14264008;line-height:1.2;touch-action:pan-y}.ceus-calendar-event:hover{filter:brightness(.975);box-shadow:0 3px 8px #14264017;z-index:3}.ceus-calendar-event[draggable=true]{cursor:grab}.ceus-calendar-event[draggable=true]:active{cursor:grabbing}.ceus-calendar-event>strong{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700}.ceus-calendar-event>small{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;opacity:.85}.ceus-calendar-event-time{display:flex;align-items:center;justify-content:space-between;gap:5px;width:100%;overflow:hidden;white-space:nowrap;font-size:9px;font-weight:650;font-variant-numeric:tabular-nums}.ceus-calendar-event-time>span{overflow:hidden;text-overflow:ellipsis;font-size:8px;font-weight:500;opacity:.9}.ceus-calendar-event-pending{color:#865c19;background:#fff7e7;border-color:#efdfb9;border-left-color:#ce9a3e}.ceus-calendar-event-completed{color:#286a5f;background:#edf8f4;border-color:#c7e3d8;border-left-color:#5c9d89}.ceus-calendar-event-cancelled{color:#586779;background:#f5f6f8;border-color:#e1e5ea;border-left-color:#aeb6c1}.ceus-calendar-event-cancelled>strong{text-decoration:line-through;text-decoration-color:#b3bac4}.ceus-calendar-event-compact{padding:4px 6px;gap:2px}.ceus-calendar-event-compact>small,.ceus-calendar-event-compact .ceus-calendar-event-time>span{display:none}.ceus-calendar-event-compact>strong{font-size:10px}.ceus-calendar-event-compact>.ceus-calendar-event-time{font-size:8px}.ceus-calendar-dragging{opacity:.45}.ceus-calendar-busy .ceus-calendar-scroll{opacity:.65;pointer-events:none}.ceus-calendar-empty{margin:0;padding:15px 24px;border-top:1px solid var(--ceus-calendar-line);background:#fbfcfe;color:#758299;font-size:12px}.ceus-calendar-legend{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:0;padding:17px 26px;border-top:1px solid var(--ceus-calendar-line);background:#fff;color:#6d7a8d;font-size:10px}.ceus-calendar-legend>span{display:inline-flex;align-items:center;gap:6px}.ceus-calendar-legend>p{flex-basis:100%;margin:2px 0 0;color:#66758a;font-size:10px;line-height:1.5}.ceus-calendar-dot{width:7px;height:7px;border-radius:50%;background:#4176d9}.ceus-calendar-dot-pending{background:#ce9a3e}.ceus-calendar-dot-completed{background:#5c9d89}.ceus-calendar-dot-cancelled{background:#aeb6c1}.ceus-calendar-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ceus-calendar-dialog{width:min(490px,calc(100vw - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:25px;border:1px solid #dae3ef;border-radius:17px;background:#fff;color:#142640;box-shadow:0 28px 90px #10213d33;font-family:inherit;overflow:auto}.ceus-calendar-dialog::backdrop{background:#14264065;backdrop-filter:blur(3px)}.ceus-calendar-dialog-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.ceus-calendar-dialog-heading h3{margin:0;font-size:23px;line-height:1.2;letter-spacing:-.045em}.ceus-calendar-close{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;padding:0;border:1px solid #e1e7f0;border-radius:8px;background:#f8faff;color:#64758d;font-size:23px;line-height:1}.ceus-calendar-dialog-intro{margin:14px 0 18px;color:#6e7d91;font-size:12px;line-height:1.65}.ceus-calendar-dialog-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.ceus-calendar-dialog-fields label{display:flex;flex-direction:column;gap:7px;color:#52647d;font-size:11px;font-weight:650}.ceus-calendar-dialog-fields input,.ceus-calendar-dialog-fields select{width:100%;height:42px;min-width:0;padding:9px 10px;border:1px solid #dbe4ef;border-radius:8px;background:#fff;color:#2e4462;font-size:12px;font-weight:450}.ceus-calendar-dialog-message{min-height:24px;margin:15px 0;color:#687b94;font-size:12px;line-height:1.6}.ceus-calendar-dialog-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding-top:17px;border-top:1px solid #e8edf4}.ceus-calendar-confirm-customer{margin:0 0 14px;font-size:15px;font-weight:650}.ceus-calendar-move-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.ceus-calendar-move-summary>div{padding:15px;border:1px solid #e0e7f0;border-radius:10px;background:#f9fbfe}.ceus-calendar-move-summary>div:last-child{background:#eef4ff;border-color:#c8d9f6}.ceus-calendar-move-summary dt{margin:0 0 7px;color:#687c97;font-size:10px;font-weight:650}.ceus-calendar-move-summary dd{margin:0;color:#2c476b;font-size:12px;line-height:1.6}.ceus-calendar-move-summary dd small{display:block;color:#6d7f98;font-size:10px}
@media(min-width:1600px){.ceus-calendar-scroll{max-height:710px}}@media(max-width:1050px){.ceus-calendar-toolbar{align-items:flex-start;flex-direction:column;gap:17px}.ceus-calendar-actions{width:100%}.ceus-calendar-controls{flex-wrap:wrap}.ceus-calendar-period{order:3;flex-basis:100%;padding-top:3px}.ceus-calendar-filters{gap:10px;flex-wrap:wrap}.ceus-calendar-filters label{min-width:130px;flex:1}.ceus-calendar-search{min-width:190px!important}.ceus-calendar-hours{margin-left:auto}}@media(max-width:720px){.ceus-calendar{border-radius:13px}.ceus-calendar-toolbar{padding:20px 17px}.ceus-calendar-heading h2{font-size:23px}.ceus-calendar-actions{gap:7px}.ceus-calendar-button{min-height:40px;padding:9px 11px;font-size:11px}.ceus-calendar-actions .ceus-calendar-primary{margin-left:auto}.ceus-calendar-controls{padding:13px 16px;gap:13px}.ceus-calendar-navigation{gap:5px}.ceus-calendar-date-label input{max-width:128px;height:39px;font-size:11px}.ceus-calendar-arrow{height:39px;width:30px}.ceus-calendar-switch button{min-width:47px;min-height:33px}.ceus-calendar-period{font-size:13px}.ceus-calendar-filters{padding:16px;gap:12px}.ceus-calendar-filters label{min-width:115px}.ceus-calendar-search{flex-basis:100%!important}.ceus-calendar-filters select,.ceus-calendar-filters input{height:42px;font-size:13px}.ceus-calendar-hours{min-height:32px;padding:5px 8px}.ceus-calendar-meta{padding:0 16px 14px;flex-wrap:wrap;font-size:10px}.ceus-calendar-notice{margin:0 15px 14px}.ceus-calendar-scroll{max-height:570px;min-height:360px}.ceus-calendar-grid{grid-template-columns:47px repeat(var(--ceus-calendar-columns),minmax(var(--ceus-calendar-column-min),1fr))}.ceus-calendar-column-heading{min-height:72px}.ceus-calendar-event{padding:7px}.ceus-calendar-event>strong{font-size:11px}.ceus-calendar-event-compact{padding:5px 6px}.ceus-calendar-event-compact>strong{font-size:11px}.ceus-calendar-event-compact>.ceus-calendar-event-time{font-size:9px}.ceus-calendar-legend{padding:16px;gap:11px;font-size:9px}.ceus-calendar-dialog{padding:20px}.ceus-calendar-dialog-heading h3{font-size:21px}.ceus-calendar-dialog-fields{gap:12px}.ceus-calendar-move-summary{grid-template-columns:1fr}.ceus-calendar-dialog-actions .ceus-calendar-button{min-height:43px}.ceus-calendar-empty{padding:14px 16px}}@media(prefers-reduced-motion:reduce){.ceus-calendar *,.ceus-calendar-dialog *{scroll-behavior:auto!important;transition:none!important}}

/* Secondary actions retain one DOM control each; native details supplies keyboard access. */
.ceus-calendar-more{position:relative}.ceus-calendar-more>summary{display:none;list-style:none;user-select:none}.ceus-calendar-more>summary::-webkit-details-marker{display:none}.ceus-calendar-more-menu{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ceus-calendar-filter-toggle{display:none}.ceus-calendar-filters[hidden]{display:none}
@media(max-width:720px){
 .ceus-calendar-toolbar{flex-direction:row;align-items:center;gap:10px;padding:16px}.ceus-calendar-heading h2{font-size:22px}.ceus-calendar-heading>.ceus-calendar-eyebrow,.ceus-calendar-subtitle{display:none}.ceus-calendar-actions{width:auto;flex-wrap:nowrap;gap:7px}.ceus-calendar-actions .ceus-calendar-primary{margin-left:0;min-height:38px;padding:9px 11px}.ceus-calendar-more>summary{display:flex;min-height:38px;padding:9px 10px;font-size:11px}.ceus-calendar-more-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:10;display:flex;flex-direction:column;align-items:stretch;gap:2px;min-width:205px;padding:7px;border:1px solid #dce4ee;border-radius:10px;background:#fff;box-shadow:0 12px 32px #14264020}.ceus-calendar-more-menu .ceus-calendar-button{justify-content:flex-start;min-height:42px;margin:0;padding:10px 12px;border:0;text-align:left;white-space:normal}.ceus-calendar-controls{gap:10px;padding:12px 16px}.ceus-calendar-navigation{gap:5px}.ceus-calendar-date-label input{width:39px;max-width:39px;padding:7px}.ceus-calendar-date-label input::-webkit-datetime-edit{display:none}.ceus-calendar-date-label input::-webkit-calendar-picker-indicator{margin:0;width:17px;height:17px;opacity:.8}.ceus-calendar-switch button{min-width:49px}.ceus-calendar-period{padding-top:0;font-size:12px}.ceus-calendar-filter-toggle{display:inline-flex;min-height:33px;margin:11px 16px 9px;padding:7px 11px;font-size:11px}.ceus-calendar-filters{padding:0 16px 14px}.ceus-calendar-meta{padding:0 16px 12px}.ceus-calendar-scroll{max-height:600px}.ceus-calendar-column-heading,.ceus-calendar-hour-heading{min-height:66px}
}
