body {
    background: none;
}

.public-schedule-page {
    min-width: 320px;
}

.public-schedule-main {
    width: 100%;
}

.public-schedule-content {
    width: 100%;
}

.public-schedule-toolbar {
    align-items: flex-end;
}

.public-schedule-toolbar .toolbar-right {
    margin-left: auto;
}

.public-date-field {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    color: var(--text-muted);
    font-size: .72rem;
    font-weight: 600;
}

.public-date-field input {
    width: 150px;
    height: var(--control-height);
}

.public-schedule-page .schedule-row {
    cursor: default;
}

.public-schedule-page .schedule-list[aria-busy="true"] {
    opacity: .65;
}

@media (max-width: 900px) {
    .public-schedule-page {
        height: auto !important;
        overflow: visible !important;
        min-height: auto !important;
        max-height: auto !important;
    }
    #calendar-root, #public-schedule-list  {
        overflow: visible !important;
    }
    #public-today {
        display: none;
    }
    .public-schedule-content {
        padding: 10px;
    }

    .public-schedule-toolbar .toolbar-left,
    .public-schedule-toolbar .toolbar-right {
        width: 100%;
    }

    .public-schedule-toolbar .toolbar-right {
        display: flex;
        margin-left: 0;
        flex-direction: row;
        gap: 8px;
        padding: 0;
        background: transparent;
        border: 0;
        border-radius: 0;
        order: initial;
    }

    .public-schedule-toolbar .period-nav {
        width: auto;
        /*flex: 1 1 220px;*/
    }

    .public-date-field {
        flex: 1 1 auto;
    }

    .public-date-field input {
        width: 100%;
    }

    .public-schedule-filters .toolbar-field {
        flex: 1 1 140px;
        width: auto;
        max-width: none;
    }

    .public-schedule-filters select {
        width: 100% !important;
        max-width: none !important;
    }
}
