:root{--cat-exhibition-bg:var(--gold-100);--cat-exhibition-fg:#5e4416;--cat-exhibition:var(--gold-500);--cat-conference-bg:#e2e8f1;--cat-conference-fg:#243650;--cat-conference:#4a6489;--cat-concert-bg:#f4e1db;--cat-concert-fg:#6f2a1b;--cat-concert:#b8563d;--cat-theatre-bg:#e1ece2;--cat-theatre-fg:#24452a;--cat-theatre:#4d7f55;--cal-lane:24px}.ev-view-switch .tab{align-items:center;gap:8px;display:inline-flex}.ev-view-switch .tab svg{width:16px;height:16px}.cat-dot{background:var(--cat-c,var(--gold-500));border-radius:50%;flex:none;width:9px;height:9px;margin-right:8px}.cat-dot.cat-exhibition{--cat-c:var(--cat-exhibition)}.cat-dot.cat-conference{--cat-c:var(--cat-conference)}.cat-dot.cat-concert{--cat-c:var(--cat-concert)}.cat-dot.cat-theatre{--cat-c:var(--cat-theatre)}.chip.is-active .cat-dot{box-shadow:0 0 0 2px var(--white)}.cal{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px}.cal-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.cal-title{font-family:var(--f-display);text-transform:capitalize;font-size:clamp(22px,2.4vw,30px);font-weight:500;line-height:1.2}.cal-nav{align-items:center;gap:8px;display:flex}.cal-nav .icon-btn svg{width:18px;height:18px}.cal-today-btn[disabled]{opacity:.55;cursor:default}.cal-grid-wrap{overflow:visible}.cal-grid{table-layout:fixed;border-collapse:collapse;width:100%}.cal-grid th{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:0 0 10px 10px;font-size:12px;font-weight:800}.cal-grid abbr{text-decoration:none}.cal-cell{vertical-align:top;border:1px solid var(--line);background:var(--white);cursor:default;padding:0;position:relative}.cal-cell.has-ev{cursor:pointer}.cal-cell.is-out{background:var(--paper)}.cal-cell.is-out .cal-num{color:var(--muted);font-weight:600}.cal-cell:focus-visible{outline:3px solid var(--gold-500);outline-offset:-3px;z-index:2;border-radius:0}.cal-cell-in{flex-direction:column;min-height:118px;padding:6px 0 8px;display:flex}.cal-num{min-width:28px;height:28px;color:var(--ink);border-radius:999px;align-self:flex-start;place-items:center;margin:0 0 4px 6px;padding:0 6px;font-size:13.5px;font-weight:700;display:inline-grid}.cal-cell.is-today{background:var(--gold-50)}.cal-cell.is-today .cal-num{background:var(--night-800);color:var(--white)}.cal-lanes{height:calc(var(--lanes,0) * var(--cal-lane));position:relative}.cal-bar{z-index:1;top:calc(var(--lane) * var(--cal-lane));height:calc(var(--cal-lane) - 4px);width:calc(var(--span) * 100% + (var(--span) - 1) * 1px - 8px);white-space:nowrap;background:var(--bar-bg);color:var(--bar-fg);border-left:3px solid var(--bar-c);border-radius:6px;align-items:center;padding:0 8px;font-size:12px;font-weight:700;line-height:1;transition:filter .2s;display:flex;position:absolute;left:4px;overflow:hidden}.cal-bar span{text-overflow:ellipsis;overflow:hidden}.cal-bar:hover{filter:brightness(.95);text-decoration:underline}.cal-bar.cont-l{width:calc(var(--span) * 100% + (var(--span) - 1) * 1px - 4px);border-left-width:0;border-top-left-radius:0;border-bottom-left-radius:0;left:0}.cal-bar.cont-r{width:calc(var(--span) * 100% + (var(--span) - 1) * 1px - 4px + 1px);border-top-right-radius:0;border-bottom-right-radius:0}.cal-bar.cont-l.cont-r{width:calc(var(--span) * 100% + (var(--span) - 1) * 1px + 1px)}.cal-bar.is-past{color:#5b554b;background:#efece6;border-left-color:#a9a294;font-weight:600}.cat-exhibition{--bar-bg:var(--cat-exhibition-bg);--bar-fg:var(--cat-exhibition-fg);--bar-c:var(--cat-exhibition)}.cat-conference{--bar-bg:var(--cat-conference-bg);--bar-fg:var(--cat-conference-fg);--bar-c:var(--cat-conference)}.cat-concert{--bar-bg:var(--cat-concert-bg);--bar-fg:var(--cat-concert-fg);--bar-c:var(--cat-concert)}.cat-theatre{--bar-bg:var(--cat-theatre-bg);--bar-fg:var(--cat-theatre-fg);--bar-c:var(--cat-theatre)}.cal-more{color:var(--gold-text);border-radius:6px;align-self:flex-start;margin:2px 0 0 6px;padding:2px 6px;font-size:12px;font-weight:800}.cal-more:hover{background:var(--gold-50);text-decoration:underline}.cal-empty{justify-items:center;gap:8px;margin-top:18px;display:grid}.cal-empty h3{font-family:var(--f-display);color:var(--ink);font-size:22px;font-weight:500}.cal-empty-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:6px;display:flex}.cal-feed{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:18px;font-size:14px;display:flex}.cal-feed .link-arrow{color:var(--gold-text)}.agenda-days{gap:20px;margin:0;padding:0;list-style:none;display:grid}.agenda-date{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:10px;padding-bottom:8px;font-size:13px;font-weight:800;display:flex}.agenda-day.is-today .agenda-date{color:var(--ink)}.agenda-today{letter-spacing:.06em;background:var(--night-800);color:var(--white);border-radius:999px;padding:3px 9px;font-size:11px}.agenda-day ul,.cal-dialog-list{gap:10px;display:grid}.agenda-ev a{background:var(--bar-bg);border-left:4px solid var(--bar-c);color:var(--ink);border-radius:12px;gap:4px;padding:12px 14px;display:grid}.agenda-ev a:hover strong{text-decoration:underline}.agenda-ev strong{font-family:var(--f-display);font-size:18px;font-weight:500;line-height:1.25}.agenda-cat{letter-spacing:.14em;text-transform:uppercase;color:var(--bar-fg);font-size:11px;font-weight:800}.agenda-ended{letter-spacing:.06em}.agenda-meta{color:#4e483f;flex-wrap:wrap;gap:4px 14px;font-size:13px;display:flex}.agenda-meta>span{align-items:center;gap:6px;display:inline-flex}.agenda-meta svg{width:14px;height:14px;color:var(--bar-c)}.agenda-ev.is-past a{background:#f3f1ec;border-left-color:#a9a294}.agenda-ev.is-past .agenda-cat{color:#5b554b}@media (max-width:640px){.cal{border-radius:var(--radius);padding:16px}.cal-grid-wrap{display:none}.cal-title{font-size:22px}.cal-feed{flex-direction:column;align-items:flex-start}.ev-view-switch{width:100%}.ev-view-switch .tab{flex:1;justify-content:center}}@media (min-width:641px){.cal-agenda{display:none}}@media (min-width:641px) and (max-width:900px){.cal{padding:14px}.cal-grid th{letter-spacing:.06em;padding-left:6px}.cal-cell-in{min-height:96px}.cal-bar{padding:0 5px;font-size:11px}}.cal-dialog{border:1px solid var(--line);border-radius:var(--radius-lg);width:min(480px,100vw - 32px);max-height:min(80vh,640px);box-shadow:var(--shadow-lg);background:var(--white);color:var(--ink);padding:0}.cal-dialog::backdrop{background:#0b0c1080}.cal-dialog-in{padding:20px}.cal-dialog-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.cal-dialog-head h2{font-family:var(--f-display);font-size:22px;font-weight:500;line-height:1.25}.cal-dialog-empty{color:var(--muted)}@media (prefers-reduced-motion:no-preference){.cal-dialog[open]{animation:calPop .22s var(--ease)}@keyframes calPop{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}}.atc{position:relative}.atc .atc-chev{transition:transform .2s}.btn:hover .atc-chev{transform:none}.atc button[aria-expanded=true] .atc-chev{transform:rotate(180deg)}.atc-menu{z-index:20;background:var(--white);border:1px solid var(--line);min-width:270px;box-shadow:var(--shadow);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 8px);left:0}.atc-menu a{color:var(--ink);border-radius:10px;align-items:center;gap:10px;padding:11px 12px;font-size:14px;font-weight:600;display:flex}.atc-menu a:hover,.atc-menu a:focus-visible{background:var(--gold-50)}.atc-menu a svg{color:var(--gold-text)}.atc-menu a .ic-xs{margin-left:auto}@media (max-width:520px){.atc-menu{width:min(290px,100vw - 32px);min-width:0;left:0;right:auto}}.ev-cal-boot .events-page #eventGrid,.ev-cal-boot .events-page .empty-state.big,.ev-cal-boot .events-page .result-count{visibility:hidden}.cal-nav .icon-btn[disabled]{opacity:.45;cursor:default}@media (prefers-reduced-motion:reduce){.cal-bar,.atc .atc-chev{transition:none}}
