.ultimatour-booking-calendar-closed-stamp {
    --utpc-closure-icon: url("../images/reasons/other.svg");
    --utpc-closure-bg: #f7f7f8;
    --utpc-closure-band: #6b7280;
    --utpc-closure-border: rgba(75, 85, 99, 0.52);
    --utpc-closure-text: #374151;
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-width: 72px;
    max-width: calc(100% - 14px);
    min-height: 30px;
    margin: 18px auto 0;
    padding: 4px 10px 4px 8px;
    border: 1px solid var(--utpc-closure-border);
    border-left-width: 5px;
    border-left-color: var(--utpc-closure-band);
    border-radius: 5px;
    color: var(--utpc-closure-text);
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.82), rgba(255, 255, 255, 0.28)),
        var(--utpc-closure-bg);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.1;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0;
    transform: rotate(-2deg);
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05), inset 0 0 0 1px rgba(255, 255, 255, 0.45);
    pointer-events: auto;
    cursor: pointer;
    font-family: inherit;
    overflow-wrap: anywhere;
}

.ultimatour-booking-calendar-closed-stamp::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    background: currentColor;
    mask: var(--utpc-closure-icon) center / contain no-repeat;
    -webkit-mask: var(--utpc-closure-icon) center / contain no-repeat;
}

.ultimatour-booking-calendar-closed-stamp:focus-visible {
    outline: 2px solid #2563eb;
    outline-offset: 3px;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="boat-maintenance"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="maintenance"] {
    --utpc-closure-icon: url("../images/reasons/boat-maintenance.svg");
    --utpc-closure-bg: #e8f7fb;
    --utpc-closure-band: #08748a;
    --utpc-closure-border: rgba(8, 116, 138, 0.58);
    --utpc-closure-text: #075767;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="equipment-maintenance"] {
    --utpc-closure-icon: url("../images/reasons/equipment-maintenance.svg");
    --utpc-closure-bg: #fff4d7;
    --utpc-closure-band: #a16207;
    --utpc-closure-border: rgba(161, 98, 7, 0.58);
    --utpc-closure-text: #744300;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="private-charter"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="private-event"] {
    --utpc-closure-icon: url("../images/reasons/private-charter.svg");
    --utpc-closure-bg: #f1ecff;
    --utpc-closure-band: #6d28d9;
    --utpc-closure-border: rgba(109, 40, 217, 0.5);
    --utpc-closure-text: #4c1d95;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="public-holiday"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="holiday"] {
    --utpc-closure-icon: url("../images/reasons/public-holiday.svg");
    --utpc-closure-bg: #fff0f3;
    --utpc-closure-band: #be123c;
    --utpc-closure-border: rgba(190, 18, 60, 0.46);
    --utpc-closure-text: #8f1234;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="seasonal-closure"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="seasonal"] {
    --utpc-closure-icon: url("../images/reasons/seasonal-closure.svg");
    --utpc-closure-bg: #eef9ef;
    --utpc-closure-band: #15803d;
    --utpc-closure-border: rgba(21, 128, 61, 0.46);
    --utpc-closure-text: #166534;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="sea-conditions"] {
    --utpc-closure-icon: url("../images/reasons/sea-conditions.svg");
    --utpc-closure-bg: #e8f4ff;
    --utpc-closure-band: #0369a1;
    --utpc-closure-border: rgba(3, 105, 161, 0.5);
    --utpc-closure-text: #075985;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="staff-unavailable"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="staff"] {
    --utpc-closure-icon: url("../images/reasons/staff-unavailable.svg");
    --utpc-closure-bg: #f2f7ff;
    --utpc-closure-band: #2563eb;
    --utpc-closure-border: rgba(37, 99, 235, 0.46);
    --utpc-closure-text: #1d4ed8;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="vacation"] {
    --utpc-closure-icon: url("../images/reasons/vacation.svg");
    --utpc-closure-bg: #ecfdf5;
    --utpc-closure-band: #0f766e;
    --utpc-closure-border: rgba(15, 118, 110, 0.46);
    --utpc-closure-text: #115e59;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="weather"] {
    --utpc-closure-icon: url("../images/reasons/weather.svg");
    --utpc-closure-bg: #eef2ff;
    --utpc-closure-band: #4338ca;
    --utpc-closure-border: rgba(67, 56, 202, 0.48);
    --utpc-closure-text: #3730a3;
}

.ultimatour-booking-calendar-closed-stamp[data-stamp-style="other"],
.ultimatour-booking-calendar-closed-stamp[data-stamp-style="default"] {
    --utpc-closure-icon: url("../images/reasons/other.svg");
    --utpc-closure-bg: #f7f7f8;
    --utpc-closure-band: #6b7280;
    --utpc-closure-border: rgba(75, 85, 99, 0.52);
    --utpc-closure-text: #374151;
}

.ultimatour-booking-calendar-nearby-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    margin: 14px auto 0;
    padding: 5px 11px;
    border: 1px solid rgba(37, 99, 235, 0.45);
    border-radius: 999px;
    color: #1d4ed8;
    background: rgba(219, 234, 254, 0.9);
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.ultimatour-booking-calendar-empty-slot .ultimatour-booking-calendar-closed-stamp,
.ultimatour-booking-calendar-empty-slot .ultimatour-booking-calendar-nearby-pill,
.ultimatour-booking-calendar-compact-day .ultimatour-booking-calendar-closed-stamp,
.ultimatour-booking-calendar-compact-day .ultimatour-booking-calendar-nearby-pill {
    margin-top: 4px;
}

@media (max-width: 600px) {
    .ultimatour-booking-calendar-closed-stamp {
        min-width: 58px;
        min-height: 24px;
        padding: 3px 6px;
        font-size: 10px;
    }
}
