/* ---- Month / year picker on the calendar's month label ---- */
.mgit-picker-host { position: relative; }

.masons-calendar-month-label.mgit-month-trigger {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 4px 10px; border-radius: 4px; cursor: pointer; user-select: none;
}
.masons-calendar-month-label.mgit-month-trigger::after {
    content: ""; width: 0; height: 0; flex: none;
    border-left: 5px solid transparent; border-right: 5px solid transparent;
    border-top: 6px solid currentColor;
    transition: transform .15s ease;
}
.masons-calendar-month-label.mgit-month-trigger:hover,
.masons-calendar-month-label.mgit-month-trigger[aria-expanded="true"] { color: #8b1838; background: #fbeef1; }
.masons-calendar-month-label.mgit-month-trigger[aria-expanded="true"]::after { transform: rotate(180deg); }
.masons-calendar-month-label.mgit-month-trigger:focus-visible { outline: 2px solid #1d4ed8; outline-offset: 2px; }

.mgit-picker {
    position: absolute; z-index: 30; top: calc(100% + 6px); left: 50%; transform: translateX(-50%);
    width: 288px; max-width: calc(100vw - 32px); box-sizing: border-box;
    padding: 14px; background: #fff; border: 1px solid #dedede; border-radius: 6px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .14);
    font-family: "Source Sans 3", sans-serif; font-size: 15px; font-weight: 400;
    line-height: 1.3; color: #2a2a2a; text-align: left;
}
.mgit-picker[hidden] { display: none; }
.mgit-picker .mgit-picker-head { display: flex; align-items: center; gap: 8px; margin: 0 0 12px; }
.mgit-picker .mgit-picker-year {
    flex: 1; min-width: 0; height: 36px; padding: 0 10px; box-sizing: border-box;
    border: 1px solid #dedede; border-radius: 4px; background-color: #fff;
    font: inherit; font-size: 15px; color: #2a2a2a; text-align: center;
}
.mgit-picker button {
    box-shadow: none; text-transform: none; letter-spacing: normal; font-family: inherit;
}
.mgit-picker .mgit-picker-yearnav {
    flex: none; width: 36px; height: 36px; padding: 0; border-radius: 50%;
    border: 1px solid #101010; background: transparent; color: #101010;
    font-size: 22px; line-height: 1; cursor: pointer;
}
.mgit-picker .mgit-picker-yearnav:hover { background: #f4f4f4; color: #101010; }
.mgit-picker .mgit-picker-months { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.mgit-picker .mgit-picker-month {
    padding: 10px 0; border: 1px solid transparent; border-radius: 4px;
    background: transparent; color: #2a2a2a; font-size: 15px; cursor: pointer;
}
.mgit-picker .mgit-picker-month:hover { background: #f9dbe3; color: #2a2a2a; }
.mgit-picker .mgit-picker-month.is-today { border-color: #8b1838; }
.mgit-picker .mgit-picker-month.is-current,
.mgit-picker .mgit-picker-month.is-current:hover { background: #8b1838; color: #fff; }
.mgit-picker .mgit-picker-foot { margin: 12px 0 0; text-align: center; }
.mgit-picker .mgit-picker-today {
    padding: 8px 20px; border: 1px solid #8b1838; border-radius: 4px;
    background: transparent; color: #8b1838; font-size: 15px; font-weight: 600; cursor: pointer;
}
.mgit-picker .mgit-picker-today:hover { background: #8b1838; color: #fff; }
.mgit-picker button:focus-visible,
.mgit-picker select:focus-visible { outline: 2px solid #1d4ed8; outline-offset: 2px; }

/* ---- Excel export panel (signed-in staff) ---- */
.mgit-export-panel {
    margin: 32px 0 0; padding: 24px; border: 1px solid #e0d6d9; border-radius: 4px;
    background: #faf7f8; font-family: "Source Sans 3", sans-serif; color: #2a2a2a;
}
.mgit-export-panel h3 { margin: 0 0 6px; font-family: "Newsreader", serif; font-weight: 400; }
.mgit-export-panel p { margin: 0 0 16px; }
.mgit-export-panel .mgit-export-form { font-size: 16px; }
.mgit-export-panel .mgit-export-form button,
.mgit-export-panel .mgit-export-form input,
.mgit-export-panel .mgit-export-form select { font-family: inherit; }
