:root {
--ab-primary: #0d6efd;
--ab-primary-dark: #0a58ca;
--ab-success: #198754;
--ab-danger: #dc3545;
--ab-warning: #ffc107;
--ab-info: #0dcaf0;
--ab-muted: #6c757d;
--ab-bg: #ffffff;
--ab-bg-soft: #f8f9fa;
--ab-border: #dee2e6;
--ab-text: #212529;
--ab-text-soft: #495057;
--ab-radius: 10px;
--ab-radius-sm: 6px;
--ab-shadow-sm: 0 1px 3px rgba(0,0,0,.08);
--ab-shadow-md: 0 4px 16px rgba(0,0,0,.08);
--ab-targa-bg: #ffc107;
--ab-targa-text: #000000;
--ab-targa-border: #866600;
}
.angelucci-booking-wrap,
.angelucci-booking-wrap * {
box-sizing: border-box;
}
.angelucci-booking-wrap {
max-width: 760px;
margin: 0 auto;
padding: 1.2rem;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, sans-serif;
color: var(--ab-text);
background: var(--ab-bg);
border-radius: var(--ab-radius);
line-height: 1.55;
}
.angelucci-booking-wrap .angelucci-header {
text-align: center;
margin-bottom: 1.4rem;
}
.angelucci-booking-wrap .angelucci-title {
margin: 0 0 .4rem;
font-size: 1.5rem;
font-weight: 700;
color: var(--ab-primary-dark);
}
.angelucci-booking-wrap .angelucci-subtitle {
margin: 0;
color: var(--ab-text-soft);
font-size: .95rem;
}
.angelucci-booking-wrap .angelucci-filters.row-grid {
display: none !important;
}
.angelucci-booking-wrap .angelucci-field label {
display: block;
margin-bottom: .35rem;
font-size: .85rem;
font-weight: 600;
color: var(--ab-text-soft);
}
.angelucci-booking-wrap .angelucci-select,
.angelucci-booking-wrap .ab-input,
.angelucci-booking-wrap .ab-select,
.angelucci-booking-wrap .ab-textarea {
display: block;
width: 100%;
padding: .6rem .8rem;
font-size: .95rem;
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius-sm);
background: #fff;
color: var(--ab-text);
transition: border-color .15s ease, box-shadow .15s ease;
font-family: inherit;
}
.angelucci-booking-wrap .angelucci-select:focus,
.angelucci-booking-wrap .ab-input:focus,
.angelucci-booking-wrap .ab-select:focus,
.angelucci-booking-wrap .ab-textarea:focus {
outline: none;
border-color: var(--ab-primary);
box-shadow: 0 0 0 3px rgba(13, 110, 253, .15);
}
.angelucci-booking-wrap .ab-input.ab-invalid,
.angelucci-booking-wrap .ab-select.ab-invalid,
.angelucci-booking-wrap .ab-textarea.ab-invalid {
border-color: var(--ab-danger);
box-shadow: 0 0 0 3px rgba(220, 53, 69, .15);
}
.angelucci-booking-wrap .angelucci-calendar-wrap {
position: relative;
padding: 1rem;
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius);
background: #fff;
box-shadow: var(--ab-shadow-sm);
margin-bottom: 1.2rem;
}
.angelucci-booking-wrap .angelucci-calendar-loader {
position: absolute;
inset: 0;
background: rgba(255,255,255,.9);
display: none;
align-items: center;
justify-content: center;
flex-direction: column;
z-index: 50;
border-radius: var(--ab-radius);
gap: .6rem;
font-weight: 700;
color: var(--ab-primary-dark);
font-size: .95rem;
}
.angelucci-booking-wrap .angelucci-calendar-loader.is-visible {
display: flex;
}
.angelucci-booking-wrap .angelucci-spinner {
width: 34px;
height: 34px;
border: 3px solid #e9ecef;
border-top-color: var(--ab-primary);
border-radius: 50%;
animation: ab-spin 0.8s linear infinite;
}
@keyframes ab-spin { to { transform: rotate(360deg); } } .angelucci-booking-wrap .angelucci-calendar-wrap {
border-radius: 4px !important;
overflow: hidden !important;
border: 1px solid #e5e7eb !important;
padding: 0 !important;
background: #fff !important;
}
.angelucci-booking-wrap .angelucci-calendar-wrap::before {
content: "";
display: block;
width: 100%;
height: 8px;
background-color: #0d6efd;
}
.angelucci-booking-wrap .angelucci-calendar .fc {
font-size: .98rem;
padding: 1rem 1rem .5rem 1rem;
background: #fff;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-header-toolbar {
all: unset !important;
display: flex !important;
flex-direction: row !important;
align-items: center !important;
justify-content: flex-start !important;
gap: 0 !important;
width: 100% !important;
margin: 0 0 1.2rem 0 !important;
padding: 0 .2rem !important;
box-sizing: border-box !important;
position: relative !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-header-toolbar > .fc-toolbar-chunk:first-child,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-header-toolbar > .fc-toolbar-chunk:last-child {
all: unset !important;
display: inline-flex !important;
flex-direction: row !important;
align-items: center !important;
flex-shrink: 0 !important;
min-width: 56px !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-header-toolbar > .fc-toolbar-chunk:last-child {
justify-content: flex-end !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-header-toolbar > .fc-toolbar-chunk:nth-of-type(2) {
all: unset !important;
display: inline-flex !important;
flex-direction: row !important;
align-items: center !important;
justify-content: center !important;
flex: 1 1 auto !important;
width: 100% !important;
text-align: center !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-toolbar-title {
font-size: 2.5rem !important;
font-weight: 300 !important;
color: #1e293b !important;
letter-spacing: .12em !important;
text-transform: uppercase !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
text-align: center !important;
margin: 0 !important;
padding: 0 !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-today-button,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-prevYear-button,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-nextYear-button {
display: none !important;
visibility: hidden !important;
width: 0 !important;
height: 0 !important;
padding: 0 !important;
margin: 0 !important;
overflow: hidden !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-dayGridMonth-button,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-timeGridWeek-button,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-timeGridDay-button {
display: none !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button {
all: unset !important;
-webkit-appearance: none !important;
appearance: none !important;
cursor: pointer !important;
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
min-width: 52px !important;
height: 52px !important;
color: #0d6efd !important;
font-size: 0 !important;
border-radius: 6px !important;
transition: background-color .15s ease !important;
line-height: 1 !important;
position: relative !important;
padding: 0 !important;
margin: 0 !important;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button::before {
content: "\2039" !important; color: #0d6efd !important;
font-size: 3.4rem !important;
line-height: 1 !important;
font-weight: 400 !important;
display: block !important;
margin-top: -8px;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button::before {
content: "\203A" !important; color: #0d6efd !important;
font-size: 3.4rem !important;
line-height: 1 !important;
font-weight: 400 !important;
display: block !important;
margin-top: -8px;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button:hover,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button:hover {
background-color: #eff6ff !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button .fc-icon,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button .fc-icon,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button .fc-button-text,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button .fc-button-text,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-prev-button .fc-button-main,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-next-button .fc-button-main {
display: none !important;
width: 0 !important;
height: 0 !important;
overflow: hidden !important;
visibility: hidden !important;
font-size: 0 !important;
padding: 0 !important;
margin: 0 !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-col-header {
background: #ffffff !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-col-header-cell-cushion {
display: block !important;
text-align: center !important;
padding: 1rem 0 .7rem !important;
color: #0d6efd !important;
font-weight: 700 !important;
font-size: 1rem !important;
letter-spacing: .06em !important;
text-transform: uppercase !important;
text-decoration: none !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-daygrid-day {
min-height: 110px !important;
border: 1px solid #e5e7eb !important;
background-color: #ffffff !important;
cursor: pointer !important;
transition: filter .12s ease !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-daygrid-day:hover:not(.fc-day-disabled):not(.ab-day-selected) {
filter: brightness(.97) !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-daygrid-day-top {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: center !important;
padding-top: 28px !important;
position: relative !important;
min-height: 110px !important;
width: 100% !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-daygrid-day-number {
color: #475569 !important;
font-weight: 400 !important;
font-size: 1.9rem !important;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
padding: 0 !important;
margin: 0 !important;
line-height: 1.1 !important;
text-decoration: none !important;
position: relative !important;
float: none !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-day-other,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-day-other .fc-daygrid-day-number {
opacity: .38 !important;
cursor: default !important;
background-color: #fafafa !important;
} .angelucci-booking-wrap .angelucci-calendar .fc .fc-day-today {
background: #ffffff !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-day-today .fc-daygrid-day-number::before {
content: "";
position: absolute;
top: -4px;
left: 50%;
transform: translateX(-50%);
width: 36px;
height: 36px;
border-radius: 50%;
border: 2px solid #0d6efd;
opacity: .35;
z-index: 0;
pointer-events: none;
} body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .modal td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
body .remodal td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-events {
background-color: #0d6efd !important;
background-image: none !important;
border-color: #0b5ed7 !important;
}
body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number {
color: #ffffff !important;
font-weight: 700 !important;
text-decoration: none !important;
text-shadow: 0 1px 1px rgba(0,0,0,.15);
} body td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number::after,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.ab-day-selected .fc-daygrid-day-number::after {
content: "" !important;
display: block !important;
width: 10px !important;
height: 10px !important;
border-radius: 50% !important;
background-color: #ffffff !important;
position: absolute !important;
left: 50% !important;
transform: translateX(-50%) !important;
bottom: -34px !important;
box-shadow: 0 1px 2px rgba(0,0,0,.2) !important;
}
.angelucci-booking-wrap .angelucci-calendar .fc .fc-day-past {
background: #fff;
}
.angelucci-booking-wrap .angelucci-calendar .ab-event {
border: none;
border-left: 3px solid var(--ab-primary);
padding: 2px 6px;
font-size: .78rem;
}
.angelucci-booking-wrap .angelucci-calendar .ab-event-pending  { background: #ffeaa7; color: #5a4300; border-left-color: #f39c12; }
.angelucci-booking-wrap .angelucci-calendar .ab-event-confirmed{ background: #a8e6cf; color: #1b5e20; border-left-color: var(--ab-success); }
.angelucci-booking-wrap .angelucci-calendar .ab-event-cancelled{ background: #ffcdd2; color: #8b0000; border-left-color: var(--ab-danger); }
.angelucci-booking-wrap .angelucci-calendar .ab-event-check{ background: #b3e5fc; color: #01579b; border-left-color: var(--ab-info); }
.angelucci-booking-wrap .angelucci-slots-wrap {
padding: 1rem;
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius);
background: #fff;
box-shadow: var(--ab-shadow-md);
margin-bottom: 1.2rem;
}
.angelucci-booking-wrap .angelucci-slots-header {
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: .6rem;
margin-bottom: 1rem;
}
.angelucci-booking-wrap .angelucci-slots-header h3 {
margin: 0;
font-size: 1.1rem;
font-weight: 700;
}
.angelucci-booking-wrap .angelucci-selected-date {
color: var(--ab-primary-dark);
}
.angelucci-booking-wrap .angelucci-btn-link {
background: none;
border: none;
padding: .4rem .6rem;
color: var(--ab-primary);
cursor: pointer;
font-weight: 600;
border-radius: var(--ab-radius-sm);
}
.angelucci-booking-wrap .angelucci-btn-link:hover {
background: rgba(13,110,253,.08);
text-decoration: underline;
}
.angelucci-booking-wrap .angelucci-slots-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: .6rem;
}
.angelucci-booking-wrap .angelucci-slot-btn {
padding: .75rem .5rem;
font-size: 1rem;
font-weight: 700;
border: 2px solid var(--ab-border);
background: #fff;
color: var(--ab-primary-dark);
border-radius: var(--ab-radius-sm);
cursor: pointer;
transition: transform .1s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
.angelucci-booking-wrap .angelucci-slot-btn:hover {
transform: translateY(-1px);
background: var(--ab-primary);
color: #fff;
border-color: var(--ab-primary);
box-shadow: var(--ab-shadow-sm);
}
.angelucci-booking-wrap .angelucci-slot-btn:active { transform: translateY(0); }
.angelucci-booking-wrap .angelucci-no-slots p {
padding: 1rem;
text-align: center;
background: var(--ab-bg-soft);
color: var(--ab-muted);
border: 1px dashed var(--ab-border);
border-radius: var(--ab-radius-sm);
font-weight: 600;
}
.angelucci-booking-wrap .angelucci-form-wrap {
padding: 1.2rem;
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius);
background: #fff;
box-shadow: var(--ab-shadow-md);
margin-bottom: 1.2rem;
}
.angelucci-booking-wrap .angelucci-booking-form {
display: flex;
flex-direction: column;
gap: 1rem;
}
.angelucci-booking-wrap .angelucci-appointment-summary {
padding: 1rem;
background: linear-gradient(135deg, rgba(13,110,253,.08), rgba(13,110,253,.02));
border: 1px solid rgba(13,110,253,.2);
border-radius: var(--ab-radius);
}
.angelucci-booking-wrap .angelucci-appointment-summary h4 {
margin: 0 0 .6rem;
font-size: 1rem;
color: var(--ab-primary-dark);
text-transform: uppercase;
letter-spacing: .3px;
}
.angelucci-booking-wrap .angelucci-appointment-summary ul {
list-style: none;
margin: 0;
padding: 0;
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: .3rem .8rem;
}
.angelucci-booking-wrap .angelucci-appointment-summary li .lbl {
color: var(--ab-text-soft);
margin-right: .3rem;
font-size: .88rem;
}
.angelucci-booking-wrap .angelucci-form-row {
display: grid;
gap: .8rem;
}
.angelucci-booking-wrap .ab-row-2 { grid-template-columns: repeat(2, 1fr); }
.angelucci-booking-wrap .ab-row-4-3 { grid-template-columns: 4fr 3fr; }
.angelucci-booking-wrap .angelucci-field-group label {
display: block;
margin-bottom: .35rem;
font-size: .85rem;
font-weight: 600;
color: var(--ab-text-soft);
}
.angelucci-booking-wrap .angelucci-field-group .ab-input,
.angelucci-booking-wrap .angelucci-field-group .ab-select,
.angelucci-booking-wrap .angelucci-field-group .ab-textarea {
min-height: 40px;
}
.angelucci-booking-wrap .ab-textarea { min-height: 80px; resize: vertical; }
.angelucci-booking-wrap .ab-targa {
text-transform: uppercase;
letter-spacing: 1.5px;
font-weight: 700;
background: var(--ab-targa-bg);
color: var(--ab-targa-text);
border: 2px solid var(--ab-targa-border);
font-family: 'Courier New', ui-monospace, monospace;
border-radius: 4px;
}
.angelucci-booking-wrap .ab-targa::placeholder {
color: rgba(0,0,0,.4);
letter-spacing: normal;
font-weight: 500;
}
.angelucci-booking-wrap .angelucci-fieldset {
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius);
padding: 1rem;
margin: 0;
background: #fbfdff;
}
.angelucci-booking-wrap .angelucci-fieldset legend {
padding: 0 .5rem;
font-weight: 700;
color: var(--ab-primary-dark);
font-size: .95rem;
width: auto;
}
.angelucci-booking-wrap .angelucci-privacy-box {
padding: .8rem 1rem;
background: var(--ab-bg-soft);
border-left: 3px solid var(--ab-primary);
border-radius: var(--ab-radius-sm);
}
.angelucci-booking-wrap .ab-check {
display: flex;
align-items: flex-start;
gap: .5rem;
cursor: pointer;
font-size: .9rem;
color: var(--ab-text-soft);
margin: 0;
}
.angelucci-booking-wrap .ab-check input {
margin-top: .2rem;
accent-color: var(--ab-primary);
}
.angelucci-booking-wrap .angelucci-actions {
display: flex;
justify-content: space-between;
align-items: center;
gap: .8rem;
flex-wrap: wrap;
}
.angelucci-booking-wrap .ab-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: .5rem;
padding: .8rem 1.4rem;
font-size: .95rem;
font-weight: 700;
border: 2px solid transparent;
border-radius: var(--ab-radius-sm);
cursor: pointer;
transition: all .15s ease;
line-height: 1.2;
min-height: 44px;
font-family: inherit;
}
.angelucci-booking-wrap .ab-btn:disabled {
opacity: .6;
cursor: not-allowed;
}
.angelucci-booking-wrap .ab-btn-primary {
background: var(--ab-primary);
color: #fff;
border-color: var(--ab-primary);
text-transform: uppercase;
letter-spacing: .4px;
}
.angelucci-booking-wrap .ab-btn-primary:hover:not(:disabled) {
background: var(--ab-primary-dark);
border-color: var(--ab-primary-dark);
box-shadow: 0 4px 12px rgba(13,110,253,.3);
transform: translateY(-1px);
}
.angelucci-booking-wrap .ab-btn-ghost {
background: transparent;
color: var(--ab-text-soft);
border-color: var(--ab-border);
}
.angelucci-booking-wrap .ab-btn-ghost:hover:not(:disabled) {
background: var(--ab-bg-soft);
color: var(--ab-text);
}
.angelucci-booking-wrap .angelucci-msg {
padding: .9rem 1rem;
border-radius: var(--ab-radius-sm);
font-weight: 600;
font-size: .92rem;
}
.angelucci-booking-wrap .angelucci-msg:empty { display: none !important; padding: 0 !important; border: 0 !important; }
.angelucci-booking-wrap .angelucci-msg-info    { background: #e7f5ff; color: #044a7a; border: 1px solid #9fd2f5; }
.angelucci-booking-wrap .angelucci-msg-success { background: #d4f5df; color: #0b5a24; border: 1px solid #8fd9a7; }
.angelucci-booking-wrap .angelucci-msg-warning { background: #fff5d6; color: #7a5b00; border: 1px solid #ffd96a; }
.angelucci-booking-wrap .angelucci-msg-error   { background: #fde2e4; color: #8b0016; border: 1px solid #f3a4a9; }
.angelucci-booking-wrap #angelucci-success {
padding: 1.4rem;
border-radius: var(--ab-radius);
background: #d4f5df;
border: 1px solid #8fd9a7;
color: #0b5a24;
text-align: center;
font-weight: 700;
font-size: 1rem;
}
@media (max-width: 720px) {
.angelucci-booking-wrap .angelucci-filters.row-grid { grid-template-columns: 1fr 1fr; }
.angelucci-booking-wrap .angelucci-slots-grid { grid-template-columns: repeat(2, 1fr); }
.angelucci-booking-wrap .ab-row-2 { grid-template-columns: 1fr; }
.angelucci-booking-wrap .ab-row-4-3 { grid-template-columns: 1fr; }
.angelucci-booking-wrap .angelucci-appointment-summary ul { grid-template-columns: 1fr; }
.angelucci-booking-wrap .angelucci-calendar .fc .fc-toolbar { flex-direction: column; gap: .5rem; }
}
@media (max-width: 480px) {
.angelucci-booking-wrap { padding: .8rem; }
.angelucci-booking-wrap .angelucci-filters.row-grid { grid-template-columns: 1fr; }
.angelucci-booking-wrap .angelucci-slots-grid { grid-template-columns: 1fr 1fr; }
.angelucci-booking-wrap .angelucci-title { font-size: 1.25rem; }
.angelucci-booking-wrap .angelucci-actions { flex-direction: column-reverse; align-items: stretch; }
.angelucci-booking-wrap .ab-btn { width: 100%; }
}
.angelucci-standalone-page {
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
padding: 2rem 1rem;
background: linear-gradient(135deg, #f5f7fa, #e9eef5);
font-family: inherit;
}
.angelucci-card {
width: 100%;
max-width: 520px;
background: #fff;
padding: 2rem 1.5rem;
border-radius: 16px;
box-shadow: 0 10px 40px rgba(0,0,0,.1);
text-align: center;
}
.angelucci-card.ab-success { border-top: 6px solid var(--ab-success); }
.angelucci-card.ab-danger  { border-top: 6px solid var(--ab-danger); }
.angelucci-card h2 {
margin: 0 0 .6rem;
font-size: 1.4rem;
}
.angelucci-card.ab-success h2 { color: var(--ab-success); }
.angelucci-card.ab-danger  h2 { color: var(--ab-danger); }
.angelucci-card p { margin: .4rem 0; color: var(--ab-text-soft); font-size: .95rem; }
.angelucci-card .ab-actions { margin-top: 1.2rem; display: flex; justify-content: center; gap: .6rem; flex-wrap: wrap; }  body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray > .fc-daygrid-day-frame > .fc-daygrid-day-events, body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .modal-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .ui-front td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .zoom-anim-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .flat-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .remodal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .remodal-wrapper td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .vex td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray, .angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-events {
background-color: #f1f3f5 !important;
background-image: none !important;
border-color: #dee2e6 !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray {
cursor: not-allowed !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-gray .fc-daygrid-day-number {
color: #6c757d !important;
text-decoration: line-through !important;
font-weight: 600 !important;
opacity: .95 !important;
} body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .modal-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .ui-front td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .zoom-anim-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .flat-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .remodal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .remodal-wrapper td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
body .vex td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-events {
background-color: #fed7aa !important;
background-image: none !important;
border-color: #fdba74 !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-orange .fc-daygrid-day-number {
color: #7c2d12 !important;
font-weight: 700 !important;
text-decoration: none !important;
} body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .modal-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .ui-front td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .zoom-anim-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .flat-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .remodal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .remodal-wrapper td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
body .vex td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-events {
background-color: #fde68a !important;
background-image: none !important;
border-color: #fcd34d !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-yellow .fc-daygrid-day-number {
color: #78350f !important;
font-weight: 700 !important;
text-decoration: none !important;
} body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .modal-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .ui-front td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .zoom-anim-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .flat-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .remodal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .remodal-wrapper td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
body .vex td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-events {
background-color: #bbf7d0 !important;
background-image: none !important;
border-color: #86efac !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-ab-green .fc-daygrid-day-number {
color: #14532d !important;
font-weight: 700 !important;
text-decoration: none !important;
} body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun > .fc-daygrid-day-frame,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .modal-content td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .ui-front td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .zoom-anim-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .elementor-popup-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .flat-modal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .iziModal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .remodal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .remodal-wrapper td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .swal2-container td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .vex td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-top,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-bg,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-events {
background-color: #ced4da !important;
background-image: none !important;
border-color: #b5bdc4 !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-sun,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun {
cursor: not-allowed !important;
}
body td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
body [role=dialog] td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
body .modal td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
body .ui-dialog td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
body .mfp-content td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
body .dialog-widget td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number,
.angelucci-booking-wrap .fc.angelucci-calendar td.fc-daygrid-day.fc-daygrid-day.fc-day-sun .fc-daygrid-day-number {
color: #343a40 !important;
text-decoration: line-through !important;
font-weight: 700 !important;
opacity: 1 !important;
} body .fc-daygrid-day .ab-day-badge,
body [role=dialog] .fc-daygrid-day .ab-day-badge,
body .modal .fc-daygrid-day .ab-day-badge,
body .ui-dialog .fc-daygrid-day .ab-day-badge,
body .mfp-content .fc-daygrid-day .ab-day-badge,
.angelucci-booking-wrap .angelucci-calendar .fc .fc-daygrid-day .ab-day-badge { display: none !important; } body .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
body .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame > .fc-daygrid-day-bg,
body .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame > .fc-daygrid-day-top,
body .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame > .fc-daygrid-day-events,
body [role=dialog] .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
body .modal .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
body .ui-dialog .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
body .mfp-content .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
body .dialog-widget .fc td.fc-daygrid-day.fc-daygrid-day > .fc-daygrid-day-frame,
.angelucci-booking-wrap .fc.angelucci-calendar .fc-daygrid-day-frame {
background: transparent !important;
background-color: transparent !important;
position: relative !important;
} .angelucci-booking-wrap .ab-legend {
margin-top: .9rem;
padding: .7rem 1rem;
background: #fff;
border: 1px solid var(--ab-border);
border-radius: var(--ab-radius-sm);
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: .7rem 1rem;
align-items: center;
justify-content: center;
font-size: .82rem;
color: var(--ab-text-soft);
}
.angelucci-booking-wrap .ab-legend .ab-lg-title {
font-weight: 700;
color: var(--ab-text);
margin-right: .3rem;
}
.angelucci-booking-wrap .ab-legend .ab-lg-item {
display: inline-flex;
align-items: center;
gap: .4rem;
line-height: 1;
}
.angelucci-booking-wrap .ab-legend .ab-lg-swatch {
display: inline-block;
width: 18px;
height: 18px;
border-radius: 4px;
border: 1px solid rgba(0,0,0,.15);
}
.angelucci-booking-wrap .ab-legend .ab-lg-swatch.ab-gray   { background-color: #f1f3f5; background-image: none; border-color: #dee2e6; }
.angelucci-booking-wrap .ab-legend .ab-lg-swatch.ab-sunday { background-color: #ced4da; background-image: none; border-color: #adb5bd; }
.angelucci-booking-wrap .ab-legend .ab-lg-swatch.ab-orange { background-color: #fff7ed; border-color: #fed7aa; }
.angelucci-booking-wrap .ab-legend .ab-lg-swatch.ab-yellow { background-color: #fefce8; border-color: #fef08a; }
.angelucci-booking-wrap .ab-legend .ab-lg-swatch.ab-green  { background-color: #f0fdf4; border-color: #bbf7d0; }