.ccf-date-open{text-align:left;min-height:46px;cursor:pointer}.ccf-calendar{border:1px solid var(--bs-border-color,var(--cui-line,#dce4ed));border-radius:16px;padding:20px;width:min(390px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;color:var(--bs-body-color,var(--cui-text,#243750));background:var(--bs-body-bg,var(--cui-surface,#fff));box-shadow:0 18px 65px #081e3840}.ccf-calendar::backdrop{background:#0b183c70}.ccf-calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ccf-calendar-head strong{text-transform:capitalize}.ccf-calendar-head button,.ccf-days button{border:0;border-radius:8px;min-height:42px;background:transparent;color:inherit;cursor:pointer}.ccf-calendar-head button{font-size:26px;min-width:42px}.ccf-week,.ccf-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.ccf-week{font-size:12px;color:var(--bs-secondary-color,var(--cui-muted,#60738c));margin-bottom:5px}.ccf-days{margin-bottom:18px}.ccf-days .ccf-adjacent{opacity:.52}.ccf-days .ccf-selected{background:var(--cui-action,#1767c8);color:#fff;opacity:1}.ccf-days button:hover,.ccf-calendar-head button:hover{box-shadow:inset 0 0 0 2px #357de0}.ccf-days [aria-current=date]:not(.ccf-selected){box-shadow:inset 0 0 0 1px #1767c8}.ccf-calendar button:focus-visible{outline:3px solid #69a5ed;outline-offset:1px}.ccf-calendar label{display:grid;gap:8px;font-weight:600}.ccf-calendar p{font-size:12px;line-height:1.5;margin-top:10px}.ccf-calendar-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:18px}[data-ccf-other][hidden]{display:none!important}.ccf-save-destination{margin:8px 0;display:block}
/* The save action stays in normal flow so mobile keyboards and selectors never cover fields. */
#cops-appointment .cops-save{position:static!important;margin-top:16px;max-width:100%;padding-bottom:calc(14px + env(safe-area-inset-bottom));z-index:auto!important}.cops-form-grid>*{min-width:0}.cops-workspace input,.cops-workspace select,.cops-workspace textarea{max-width:100%;box-sizing:border-box}.cops-workspace label{overflow-wrap:anywhere}.cops-workspace .cops-results{max-height:260px;overflow:auto}.cops-workspace .cops-result{min-height:44px;white-space:normal;text-align:left}

#cops-appointment textarea{width:100%;min-height:100px}#cops-appointment .cops-save button{min-height:46px}
