.event-controls{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:24px;margin-bottom:24px}.event-controls[hidden]{display:none}#event-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px}#event-filters label{display:grid;gap:8px;font-weight:700}#event-filters input,#event-filters select,.event-views button,.calendar-toolbar button{font:inherit;border:1px solid #71685e;background:#fffdf7;color:#292a26;border-radius:8px;padding:11px;min-height:44px;max-width:100%}.event-views{display:flex;gap:8px}.event-views button[aria-pressed=true]{background:#843b27;color:#fff}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0}.calendar-toolbar h2{font-size:clamp(20px,3vw,30px);margin:0}.calendar-week,.event-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-week{text-align:center;margin-bottom:8px;font-size:13px}.calendar-day{font:inherit;border:1px solid #b3a99a;border-radius:8px;background:#fffdf7;min-height:80px;text-align:left;padding:10px;color:#292a26;display:flex;flex-direction:column;gap:8px;cursor:pointer;min-width:0}.calendar-day.selected{background:#f7ddcc;border:2px solid #843b27}.calendar-count{font-size:12px;font-weight:800;color:#843b27}.calendar-selection{margin:28px 0}.event-empty{padding:24px;background:#f7eee3;border-radius:12px}.event-browser button:focus-visible,.event-browser input:focus-visible,.event-browser select:focus-visible{outline:3px solid #843b27;outline-offset:3px}.event-browser .event-card h3{overflow-wrap:anywhere}@media(max-width:600px){#event-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}#event-filters>*{min-width:0}#event-filters input,#event-filters select{width:100%;box-sizing:border-box}.calendar-day{min-height:60px;padding:6px;gap:4px}.calendar-count-label{display:none}.event-calendar,.calendar-week{gap:3px}.calendar-day{border-radius:5px}.event-controls{display:block}.event-views{margin-top:20px}}
#event-filters input,#event-filters select{min-width:0}#event-filters input::-webkit-date-and-time-value{text-align:left}@media(max-width:360px){#event-filters{grid-template-columns:minmax(0,1fr)}}

/* Keep the closed native select consistent across Safari and Chromium.
   The native option picker and keyboard behaviour are intentionally retained. */
#event-filters input,#event-filters select{box-sizing:border-box;min-height:48px;font-size:16px;line-height:1.5}
#event-filters select{-webkit-appearance:none;appearance:none;height:48px;padding-right:44px;background-color:#fffdf7;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23292a26' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:12px 8px;cursor:pointer}
#event-filters input[type=date]{display:block;min-width:0;max-width:100%;height:48px;background-color:#fffdf7;color:#292a26}
@media(forced-colors:active){#event-filters select{-webkit-appearance:auto;appearance:auto;background-image:none;padding-right:11px}}

/* List hierarchy reuses the approved card layout and palette. */
.event-list-section{margin:28px 0 40px}.event-list-section>h2{font-size:clamp(24px,3vw,32px);line-height:1.2;margin:0 0 20px}.event-browser .event-card .event-until{font-size:18px;font-weight:800;color:#843b27;margin:0 0 8px}.date-stamp>.date-until{display:block;font-size:9px;letter-spacing:.04em;margin-bottom:6px}
