/* The calendar uses the same type, controls and spacing as the MINI directory. */
.mb-mf-events-calendar{max-width:1060px}
.mb-mf-calendar-intro{color:var(--msk-muted);font-size:15px;line-height:1.8}
.mb-mf-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin-top:25px;padding-bottom:18px;border-bottom:1px solid var(--msk-line)}
.mb-mf-calendar-month-nav{display:flex;align-items:center;gap:10px;min-width:0}
.mb-mf-calendar-month-nav h2{min-width:180px;text-align:center;font-size:21px;text-transform:none}
.mb-mf-calendar-agenda-title{font-size:21px;line-height:1.4;text-transform:none}
.mb-mf-calendar-month-nav input[type=month]{display:block;flex:1;min-width:0;width:190px;max-width:100%;min-height:44px;padding:6px 4px;border:1px solid transparent;border-radius:5px;background:var(--msk-paper,#fff);color:var(--msk-ink);font:700 18px/1.4 var(--msk-sans);text-align:center;appearance:none;-webkit-appearance:none}
.mb-mf-calendar-month-nav input[type=month]::-webkit-calendar-picker-indicator{display:none}
.mb-mf-calendar-month-nav input[type=month]::-webkit-datetime-edit{padding:0;text-align:center}
.mb-mf-calendar-month-nav input[type=month]:hover{border-color:var(--msk-line)}
.mb-minifreunde .mb-mf-calendar-arrow{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;min-height:44px;border:1px solid var(--msk-line);border-radius:5px;color:var(--msk-ink)}
.mb-mf-calendar-arrow svg{display:block;width:20px;height:20px}
.mb-mf-calendar-arrow.is-previous svg{transform:rotate(180deg)}
.mb-minifreunde .mb-mf-calendar-arrow:hover{color:var(--msk-magenta);border-color:var(--msk-magenta);text-decoration:none}
.mb-mf-calendar-arrow[aria-disabled=true]{opacity:.4;pointer-events:none}
.mb-mf-calendar-view-controls{display:flex;align-items:center;gap:12px}
.mb-mf-events-calendar .mb-mf-view-switch{display:flex;flex-wrap:nowrap;width:auto;min-width:0}
.mb-mf-events-calendar .mb-mf-view-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:70px;min-height:38px;padding:7px 14px;border-radius:4px;color:var(--msk-muted);font:600 12px/1.5 var(--msk-sans);text-decoration:none}
.mb-minifreunde .mb-mf-calendar-today{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:64px;min-height:44px;padding:7px 12px;color:var(--msk-magenta);font-size:13px;font-weight:600;white-space:nowrap}
.mb-mf-events-calendar .mb-mf-view-switch a[aria-current=true]{background:var(--msk-paper,#fff);color:var(--msk-magenta);box-shadow:0 1px 4px #12152b12}
.mb-mf-calendar-message{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0;padding:12px 15px;border:1px solid var(--msk-line);border-radius:5px;color:var(--msk-muted);font-size:13px}
.mb-mf-calendar-message button{border:0;background:transparent;padding:8px 0;color:var(--msk-magenta);font:600 13px/1.5 var(--msk-sans);cursor:pointer}
.mb-minifreunde .mb-mf-calendar-timezone{margin-top:12px;color:var(--msk-muted);font-size:12px}
.mb-mf-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));margin-top:22px;border-top:1px solid var(--msk-line);border-left:1px solid var(--msk-line);border-radius:6px;overflow:hidden}
.mb-mf-calendar-weekday{padding:11px 4px;border-right:1px solid var(--msk-line);border-bottom:1px solid var(--msk-line);background:#f8f6f8;color:var(--msk-muted);font-size:12px;font-weight:600;text-align:center}
.mb-mf-calendar-cell{min-width:0;min-height:120px;padding:7px;border-right:1px solid var(--msk-line);border-bottom:1px solid var(--msk-line)}
.mb-mf-calendar-cell.is-padding{background:#faf9fb}
.mb-mf-calendar-cell.is-selected{background:#cf006307}
.mb-minifreunde .mb-mf-calendar-day-button{position:relative;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;margin:0 0 5px;padding:4px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--msk-ink);font:600 12px/1.3 var(--msk-sans);cursor:pointer}
.mb-mf-calendar-day-button[aria-current=date]{color:#fff;background:var(--msk-magenta)}
.mb-mf-calendar-day-button[aria-pressed=true]{border-color:var(--msk-magenta)}
.mb-mf-calendar-day-button:hover{color:var(--msk-magenta);border-color:var(--msk-magenta)}
.mb-mf-calendar-day-button[aria-current=date]:hover{color:#fff}
.mb-mf-calendar-dot{display:none}
.mb-minifreunde .mb-mf-calendar-cell-events{display:grid;gap:5px;list-style:none;padding:0;margin:0}
.mb-minifreunde .mb-mf-calendar-cell-events li{min-width:0;margin:0;padding:0}
.mb-minifreunde .mb-mf-calendar-cell-link{display:block;padding:5px 6px;border-left:2px solid var(--msk-magenta);border-radius:2px;background:#cf00630a;color:var(--msk-ink);font-size:11px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.mb-mf-calendar-cell-link:hover{background:#cf006316;color:var(--msk-magenta)}
.mb-mf-calendar-cell-link time{display:block;color:var(--msk-magenta);font-size:10px;font-weight:600}
.mb-mf-calendar-cell-link.is-past{opacity:.65}
.mb-mf-calendar-more{display:block;width:100%;padding:5px 2px;border:0;background:transparent;color:var(--msk-magenta);font:600 10px/1.5 var(--msk-sans);text-align:left;cursor:pointer}
.mb-mf-calendar-agenda,.mb-mf-calendar-selected{margin-top:24px}
.mb-mf-calendar-agenda-section+.mb-mf-calendar-agenda-section{margin-top:30px}
.mb-minifreunde :is(.mb-mf-calendar-day,.mb-mf-calendar-agenda-section,.mb-mf-calendar-upcoming)>h3{padding-bottom:10px;border-bottom:1px solid var(--msk-line);font-size:16px;font-weight:700}
.mb-minifreunde .mb-mf-calendar-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 0;padding:0;list-style:none}
.mb-mf-calendar-item{display:flex;flex-direction:column;min-width:0;margin:0;padding:16px 18px;border:1px solid var(--msk-line);border-radius:6px}
.mb-mf-calendar-item h4{margin:5px 0 0;font:700 15px/1.5 var(--msk-sans);letter-spacing:-.025em}
.mb-mf-calendar-item h4 a:hover{color:var(--msk-magenta)}
.mb-minifreunde .mb-mf-calendar-jump-hint{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;margin-top:auto;padding-top:9px;color:var(--msk-magenta);font-size:12px;font-weight:600}
.mb-minifreunde .mb-mf-calendar-jump-hint:hover{text-decoration:underline}
.mb-mf-calendar-item .mb-mf-event-date{font-size:12px;line-height:1.7}
.mb-minifreunde .mb-mf-calendar-place{margin-top:5px;color:var(--msk-muted);font-size:12px;line-height:1.7}
.mb-minifreunde .mb-mf-calendar-event-status{margin-top:2px;color:var(--msk-muted);font-size:11px;font-weight:600}
.mb-minifreunde .mb-mf-calendar-empty{margin-top:22px;color:var(--msk-muted);font-size:14px;line-height:1.8}
.mb-mf-calendar-upcoming{margin-top:30px}
.mb-mf-calendar-upcoming .mb-mf-calendar-items{grid-template-columns:repeat(3,minmax(0,1fr))}
.mb-minifreunde .mb-mf-calendar-day-empty{padding:14px 0;color:var(--msk-muted);font-size:14px}

@media(max-width:700px){
 .mb-mf-calendar-toolbar{gap:12px}
 .mb-mf-calendar-month-nav,.mb-mf-calendar-view-controls{width:100%;justify-content:space-between}
 .mb-mf-calendar-month-nav h2{min-width:0;font-size:19px}
 .mb-mf-calendar-agenda-title{font-size:19px}
 .mb-mf-calendar-month-nav input[type=month]{width:170px;padding-inline:2px;font-size:16px}
 .mb-minifreunde .mb-mf-calendar-arrow{flex-basis:36px}
 .mb-mf-calendar-view-controls .mb-mf-view-switch{margin-left:auto}
 .mb-mf-events-calendar .mb-mf-view-switch a{min-height:42px}
 .mb-mf-calendar-grid{margin-top:18px}
 .mb-mf-calendar-weekday{padding:8px 1px;font-size:10px}
 .mb-mf-calendar-cell{min-height:51px;padding:3px 1px}
 .mb-minifreunde .mb-mf-calendar-day-button{min-width:30px;min-height:34px;margin:0 auto;font-size:11px}
 .mb-mf-calendar-cell-events{display:none!important}
 .mb-mf-calendar-dot{position:absolute;display:block;bottom:0;left:50%;width:4px;height:4px;border-radius:50%;background:var(--msk-magenta);transform:translateX(-50%)}
 .mb-mf-calendar-day-button[aria-current=date] .mb-mf-calendar-dot{background:#fff;bottom:2px}
 .mb-minifreunde .mb-mf-calendar-items{grid-template-columns:minmax(0,1fr)}
 .mb-mf-calendar-item{padding:14px 15px}
 .mb-mf-calendar-intro{font-size:14px}
}

.mb-mf-calendar-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-block:1.5rem;font:inherit}.mb-mf-calendar-pagination:empty{display:none}
