/* Smoobu Calendar for Directorist - frontend styles */

.sbdr-section {
    margin-top: 28px;
    padding: 22px 24px;
    background: #fff;
    border: 1px solid #e6e8eb;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04);
}

.sbdr-section__header {
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #f0f1f3;
}

.sbdr-section__title {
    margin: 0;
    font-size: 1.25rem;
    line-height: 1.3;
    font-weight: 600;
    color: #1d2939;
}

.sbdr-section__body {
    /* Smoobu's widget injects its own styles; we just give it room to breathe. */
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Smoobu's calendar grid can overflow on narrow viewports — let it scroll. */
.sbdr-calendar-widget {
    min-height: 300px;
}

/* Iframe-based all-apartments widget */
.sbdr-iframe-all {
    min-height: 600px;
}
.sbdr-iframe-all iframe {
    width: 100% !important;
    border: 0;
}

/* External booking button (Airbnb fallback) */
.sbdr-external-wrap {
    margin: 18px 0 0;
}
.sbdr-external-btn {
    display: inline-block;
    padding: 12px 22px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    background: #ff5a5f;
    color: #fff !important;
    transition: background 0.15s ease, transform 0.05s ease;
}
.sbdr-external-btn:hover,
.sbdr-external-btn:focus {
    background: #e0484d;
    color: #fff !important;
}
.sbdr-external-btn:active {
    transform: translateY(1px);
}

/* Booking button row (Airbnb + direct Smoobu), rendered below the calendar */
.sbdr-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 18px 0 0;
}
.sbdr-btn {
    display: inline-block;
    padding: 12px 22px;
    font-weight: 600;
    text-decoration: none;
    border-radius: 6px;
    color: #fff !important;
    transition: background 0.15s ease, transform 0.05s ease;
}
.sbdr-btn:active {
    transform: translateY(1px);
}
.sbdr-btn--airbnb {
    background: #ff5a5f;
}
.sbdr-btn--airbnb:hover,
.sbdr-btn--airbnb:focus {
    background: #e0484d;
    color: #fff !important;
}
.sbdr-btn--smoobu {
    background: #00a991;
}
.sbdr-btn--smoobu:hover,
.sbdr-btn--smoobu:focus {
    background: #008c78;
    color: #fff !important;
}

/* Admin warning shown only to logged-in editors */
.sbdr-admin-warning {
    padding: 10px 14px;
    background: #fff7e6;
    border: 1px solid #f4c97a;
    border-radius: 4px;
    color: #663c00;
    font-size: 0.9rem;
}

/* Mobile tweaks */
@media (max-width: 640px) {
    .sbdr-section {
        padding: 18px 14px;
    }
    .sbdr-section__title {
        font-size: 1.1rem;
    }
    .sbdr-buttons {
        flex-direction: column;
    }
    .sbdr-btn {
        text-align: center;
    }
}
