/**
 * Pixouls Google Calendar – Front-end Styles
 */

/*-------------------------------------| $Base-Containers
*/
.pix-gcal-grid,
.pix-gcal-list {
    margin: 1em 0;
}

/*-------------------------------------| $Display-Sizes
*/
.pix-gcal-size-sm {
    font-size: 1.2rem;
}
.pix-gcal-size-sm .fc .fc-toolbar-title {
    font-size: 1rem;
}
.pix-gcal-size-md {
    font-size: 1.4rem;
}
.pix-gcal-size-md .fc .fc-toolbar-title {
    font-size: 1.25rem;
}
.pix-gcal-size-lg {
    font-size: 1.6rem;
}
.pix-gcal-size-lg .fc .fc-toolbar-title {
    font-size: 1.5rem;
}

/*-------------------------------------| $Toggle-View
*/
.pix-gcal-view-toggle {
    display: flex;
    justify-content: center;
    gap: 0;
    margin-bottom: 1em;
}
.pix-gcal-toggle-btn {
    padding: 0.5em 1.4em;
    border-width: 0.1em;
    border-style: solid;
    font-size: 0.9em;
    font-weight: 600;
    cursor: pointer;
    line-height: 1.4;
}
.pix-gcal-toggle-btn:first-child {
    border-radius: 0.25em 0 0 0.25em;
    border-right: none;
}
.pix-gcal-toggle-btn:last-child {
    border-radius: 0 0.25em 0.25em 0;
    border-left: none;
}

/*-------------------------------------| $FullCalendar-Overrides
 */
.pix-gcal-grid .fc .fc-event {
    cursor: pointer;
}
.pix-gcal-grid .fc .fc-daygrid-event {
    border-radius: 0.3em;
    padding: 0.1em 0.4em;
}


/*-------------------------------------| $List-View-Styles
*/
.pix-gcal-list-view {
    list-style: none;
    padding: 0;
    margin: 0;
}
.pix-gcal-list-view .pix-gcal-list-month-header {
    font-weight: 700;
    font-size: 1.75em;
    padding: 1.2em 0 0.6em;
    border-bottom: 0.2em solid #e2e4e7;
    margin-top: 1.6em;
}
.pix-gcal-list-view .pix-gcal-list-month-header:first-child {
    margin-top: 0;
}
.pix-gcal-list-item {
    display: flex;
    align-items: flex-start;
    gap: 1.2em;
    padding: 1.0em 0;
    border-bottom: 0.1em solid #f0f0f1;
}
.pix-gcal-list-item:last-child {
    border-bottom: none;
}
.pix-gcal-list-color-dot {
    width: 1.0em;
    height: 1.0em;
    border-radius: 50%;
    flex-shrink: 0;
    margin-top: 0.3em;
}
.pix-gcal-list-item-content {
    flex: 1;
}
.pix-gcal-list-item-title {
    font-size: 1.2em;
    font-weight: 600;
    margin-top: 0;
    margin-bottom: 0.2em;
}
.pix-gcal-list-item-title a {
    color: inherit;
    text-decoration: none;
}
.pix-gcal-list-item-title a:hover {
    text-decoration: underline;
}
.pix-gcal-list-item-date {
    font-size: 0.9em;
}
.pix-gcal-list-item-location {
    font-size: 0.85em;
    margin-top: 0.2em;
}
.pix-gcal-loading {
    text-align: center;
    padding: 4.0em 2.0em;
}
.pix-gcal-notice {
    font-style: italic;
}

/*-------------------------------------| $Event-Detail-Modal
 */
.pix-gcal-modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 999999;
    padding: 2.0em;
    box-sizing: border-box;
}
.pix-gcal-modal {
    border-radius: 0.8em;
    box-shadow: 0 0.8em 3.0em rgba(0, 0, 0, 0.25);
    max-width: 52.0em;
    width: 100%;
    max-height: 80vh;
    overflow-y: auto;
    position: relative;
    padding: 2.8em 2.8em 2.4em;
}
.pix-gcal-modal-close {
    position: absolute;
    top: 1.0em;
    right: 1.4em;
    background: none;
    border: none;
    font-size: 2.4em;
    line-height: 1;
    cursor: pointer;
    padding: 0.4em 0.8em;
}
.pix-gcal-modal-close:hover {

}
.pix-gcal-modal-title {
    margin: 0 0 1.6em;
    font-size: 1.3em;
    line-height: 1.3;
}
.pix-gcal-modal-field {
    margin-bottom: 1.0em;
    font-size: 0.95em;
    line-height: 1.5;
}
.pix-gcal-modal-label {
    font-weight: 600;
}
.pix-gcal-modal-description {
    display: inline;
}
.pix-gcal-modal-description a {
    color: inherit;
}
