@charset "UTF-8";:root{--font-main:"Stag Sans", sans-serif;--font-headline:"Stag Sans", sans-serif;--font-description:"Open Sans", sans-serif;--color-accent:#b7a5db;--color-edit-date:#ffadd8;--color-edit-exhibition:#d8da96;--color-link:#1e96fc;--bg-page:#ffffff;--bg-card:#ffffff;--color-text-main:#333333;--color-text-inverted:#f8f8f8;--color-text-note:#000;--color-text-error:#888888;--color-label-internal:#777777;--color-text-secondary:#666666;--color-language-border:#999;--color-filter-active:#111111;--border-main:#cccccc;--bg-month-header:#474747;--bg-date-header:#f0f0f0;--bg-note:#fff09688;--floating-button-bg:#474747;--floating-button-text:#f8f8f8;transition:--bg-page .2s ease-in-out,--bg-card .2s ease-in-out,--color-text-main .2s ease-in-out,--color-text-inverted .2s ease-in-out,--color-text-secondary .2s ease-in-out,--border-main .2s ease-in-out,--bg-month-header .2s ease-in-out,--bg-date-header .2s ease-in-out,--bg-note .2s ease-in-out,--floating-button-bg .2s ease-in-out,--floating-button-text .2s ease-in-out}html[data-theme=dark]{--bg-page:#000000;--bg-card:#141414;--color-text-main:#e1e5f2;--color-text-inverted:#e1e5f2;--color-text-secondary:#aaaaaa;--border-main:#000000;--bg-month-header:#141414;--bg-date-header:#141414;--bg-note:#ffef96dd;--floating-button-bg:#e1e5f2;--floating-button-text:#141414}.standalone-calendar{background-color:var(--bg-page);transition:background-color .2s ease-in-out;margin:0;padding:0}#calendar-wrapper{width:100%;max-width:60rem;min-height:100%;font-family:var(--font-main);color:var(--color-text-main);background-color:var(--bg-page);font-weight:400;margin:0 auto;padding:0;background-color:var(--bg-page);transition:color .2s ease-in-out,background-color .2s ease-in-out;p, h3, h4, h5{padding:0;margin:0;text-wrap:wrap}h3, h4, h5{font-family:var(--font-headline);font-weight:700} #menu-bar { display: flex; justify-content: center; align-items: center; padding: 1rem 1rem 0rem 1rem; margin: 0; color: var(--color-text-main); } #menu-bar.hidden { display: none; } .loading-spinner-container { display: flex; justify-content: center; align-items: center; font-size: 4rem; color: var(--color-text-main); padding: 1rem; } .loading-spinner { display: inline-block; width: 1em; height: 1em; line-height: 1; vertical-align: middle; animation: spin 6s linear infinite; transform-origin: center center; color: var(--color-text-secondary); } .loading-spinner svg { transform: rotate(315deg); } .error-message { color: var(--color-text-error) !important; } .language-note { font-family: var(--font-description); font-size: 1.0rem; text-align: center; color: var(--color-text-note); background: var(--bg-note); border-radius: 6px; padding: 0.6rem; margin: 0rem 0.8rem 0.8rem 0.8rem; } .language-note a { text-decoration: underline; } .event-item-wrapper { position: relative; margin-bottom: 20px; transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out; } .event-row { margin-bottom: 10px; } .combined-label-container { display: flex; flex-direction: column; width: 100%; } .content-row { word-break: break-word; white-space: normal; } .label-row { display: flex; align-items: center; gap: 0.8rem; margin-top: 0px; } .flex-line { flex-grow: 1; height: 2px; background-image: linear-gradient(to right, var(--color-label-internal) 66%, transparent 0%); background-position: left top; background-size: 20px 2px; background-repeat: repeat-x; } .content-label { color: var(--color-label-internal); font-size: 1rem; white-space: nowrap; font-family: monospace; flex-shrink: 0; } .edit-event-title, .edit-event-title a, .edit-event-title a:visited, .edit-event-title a:hover, .edit-event-title a:active, .edit-event-subtitle, .edit-event-subtitle a, .edit-event-subtitle a:visited, .edit-event-subtitle a:hover, .edit-event-subtitle a:active { font-family: monospace; color: var(--color-accent); text-decoration: none; text-wrap: wrap; } .edit-date-title, .edit-date-title a, .edit-date-title a:visited, .edit-date-title a:hover, .edit-date-title a:active, .edit-date-subtitle, .edit-date-subtitle a, .edit-date-subtitle a:visited, .edit-date-subtitle a:hover, .edit-date-subtitle a:active { font-family: monospace; color: var(--color-edit-date); text-decoration: none; text-wrap: wrap; } .edit-exhibition-title, .edit-exhibition-title a, .edit-exhibition-title a:visited, .edit-exhibition-title a:hover, .edit-exhibition-title a:active, .edit-exhibition-subtitle, .edit-exhibition-subtitle a, .edit-exhibition-subtitle a:visited, .edit-exhibition-subtitle a:hover, .edit-exhibition-subtitle a:active { font-family: monospace; color: var(--color-edit-exhibition); text-decoration: none; text-wrap: wrap; } .event-audience { font-family: monospace; color: var(--color-text-main); text-decoration: none; text-wrap: wrap; } ul { list-style-type: none; padding-left: 0px; margin: 0; } ul#event-list { list-style-type: none; margin: 0px; padding: 0px; } ul.price-list li { font-size: 1.0rem; margin-bottom: 0.2rem; } li.event-item-wrapper { margin: 0px; padding: 0px; } li#scroll-sentinel { background-color: var(--bg-page); display: flex; flex-direction: column; min-height: 100px; } .no-events-info { text-align: right; font-style: italic; color: var(--color-text-main); margin-top: auto; line-height: 1.2rem; } .date-section-header, .month-section-header { font-family: var(--font-headline); font-weight: bold; font-size: 1.4rem; background-color: var(--bg-card); display: flex; justify-content: center; align-items: center; color: var(--color-text-main); border-bottom: 1px solid var(--border-main); } .date-section-header { position: sticky; top: var(--nav-spacer-height, 0px); z-index: 1; font-size: 1.6rem; background-color: var(--bg-date-header); transition: top 0.2s, color 0.2s ease-in-out, background-color 0.2s ease-in-out; @media (min-width: 79em) { top: var(--nav-height, 0px); } } .date-section-header-wrapper { width: 100%; max-width: 76rem; display: flex; justify-content: left; } .date-section-header, .month-section-header { background-color: var(--bg-page); width: 100vw; margin-left: calc(-50vw + 50%); box-sizing: border-box; } .date-section-header.reception { position: static; top: auto; z-index: auto; width: auto; margin-left: 0; background-color: var(--bg-page); justify-content: space-between; border: none; } .current-time-display { color: var(--color-text-main); font-weight: 300; } .month-section-header { color: var(--color-text-inverted); background-color: var(--bg-month-header); } .event-item-wrapper+.month-section-header, .event-item-wrapper+.date-section-header { margin-top: 20px; } ul#event-list>li.event-item-wrapper+li.event-item-wrapper { border-top: 1px solid var(--border-main); } ul#event-list>li.event-item-wrapper:has(+ #scroll-sentinel) { border-bottom: 1px solid var(--border-main); } ul#event-list>li { padding: 1rem; } ul#event-list>li.month-section-header { padding: 0.8rem 1rem; } a { color: var(--color-link); } ul#event-list>li.event-item-wrapper { background: var(--bg-card); } ul#event-list>li img { width: 100%; } .date-text { color: var(--color-text-main); } button { background: transparent; border: none; color: var(--color-text-main); transition: opacity 0.2s ease-in-out, color 0.2s ease-in-out; } .icon-button { padding: 0; font-size: 1.6rem; } .icon-button:focus { color: var(--color-text-main); } button:disabled { cursor: not-allowed; pointer-events: none; } button:hover { cursor: pointer; color: var(--color-text-secondary); } .filter-button:disabled { cursor: not-allowed; pointer-events: none; } .button-area { display: flex; gap: 0.8rem; } .stag-spacing { letter-spacing: .02em; word-spacing: .15em; } .event-time { font-size: 1.2rem; font-family: var(--font-main); font-weight: 300; color: var(--color-text-main); padding-bottom: 0.5rem; } .event-time-container { display: flex; align-items: center; } .event-time-container>.right-aligned-item { margin-left: auto; } .no-seats-available-info { font-style: italic; } .event-title-bar { font-size: 1.6rem; display: flex; align-items: flex-start; justify-content: space-between; gap: 0.8rem; } .event-title-bar .icon-button { font-size: inherit; line-height: 1; } .event-title-left { flex: 1; min-width: 0; } .event-admin-buttons { display: flex; gap: 0.8rem; flex-shrink: 0; align-self: flex-start; } .event-title { font-family: var(--font-headline); font-weight: bold; color: var(--color-text-main); padding-bottom: 0.5rem; } .event-subtitle { font-size: 1.2rem; font-family: var(--font-main); font-weight: 300; color: var(--color-text-main); padding-bottom: 1rem; } .octagon-seperator { font-size: 0.2em; vertical-align: middle; padding: 0 2px; } .collapsible-container { font-family: var(--font-description); margin: 0; overflow: hidden; font-size: 1.0rem; color: var(--color-text-main); } .collapsible-button-bar { display: flex; align-items: center; gap: 2rem; margin-top: 1rem; } .collapsible-button-bar>*:last-child { margin-left: auto; } .details-button, .ics-button { background: none; color: var(--color-text-main); cursor: pointer; padding: 0; border: none; font-size: 1.0rem; display: flex; align-items: center; } .tickets-button { color: var(--color-text-main); transition: opacity 0.2s ease-in-out, color 0.2s ease-in-out; text-decoration: none; font-size: 1.0rem; display: inline-flex; align-items: center; } .details-button-inner, .tickets-button-inner, .ics-button-inner { display: inline-flex; align-items: center; gap: 0.8rem; text-align: right; } .details-button-inner i, .tickets-button-inner i, .ics-button-inner i { flex-shrink: 0; } .details-button, .details-button-inner, .tickets-button, .tickets-button-inner, .ics-button, .ics-button-inner { font-family: var(--font-main); } .tickets-button:hover, .details-button:hover, .ics-button:hover { color: var(--color-text-secondary); } .details-button .details-button-inner .bs-icon-arrow { transition: transform 0.2s ease; } .details-button.active .details-button-inner .bs-icon-arrow { transform: rotate(-180deg); } .collapsible-content { padding: 0; max-height: 0; overflow: hidden; transition: max-height 0.2s ease, opacity 0.2s ease, padding-top 0.2s ease; opacity: 0; } .collapsible-content.show { opacity: 1; max-height: 2000px; padding-top: 10px; } .description { font-size: 1.0rem; color: var(--color-text-main); } .img-container { padding: 0; } .exhibition-header { padding-top: 2rem; padding-bottom: 1rem; } .edit-container { padding-top: 32px; max-height: 500px; overflow: hidden; transition: max-height 0.2s ease, opacity 0.2s ease, padding-top 0.2s ease; opacity: 1; pointer-events: auto; color: var(--color-text-main); } .edit-container.hidden { padding-top: 0; max-height: 0; opacity: 0; pointer-events: none; } #exhibition-filter-area.hidden { display: none; } #language-filter-area.hidden { display: none; } .filter-categories-container { display: flex; flex-wrap: wrap; gap: 0.8rem; padding: 1rem; justify-content: center; } .filter-button { font-family: var(--font-main); position: relative; background-color: var(--bg-card); color: var(--color-text-main); border: 2px solid var(--button-color); padding: 4px 10px; border-radius: 20px; cursor: pointer; font-size: 1.0rem; white-space: nowrap; display: flex; align-items: center; justify-content: center; line-height: 1; } .filter-button.active { font-weight: bold; color: var(--color-filter-active); background-color: var(--button-color); } .filter-button.active::after { content: "\00a0×"; } .filter-label { font-family: var(--font-main); background-color: transparent; color: var(--color-filter-active); padding: 0.25rem 0.625rem; border-radius: 1.25rem; font-size: 1.0rem; white-space: nowrap; font-weight: normal; margin-bottom: 0.5rem; display: inline-flex; align-items: center; justify-content: center; line-height: 1; } .language-label { margin-left: 0.5rem; background-color: transparent; color: var(--color-text-main); border: 1px solid var(--color-language-border); } .hidden { display: none; } #back-to-top { position: fixed; bottom: 2rem; right: 2rem; width: 50px; height: 50px; font-size: 1.2rem; background-color: var(--floating-button-bg); color: var(--floating-button-text); border: none; border-radius: 50%; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2); cursor: pointer; opacity: 0; pointer-events: none; transition: opacity 0.2s ease; z-index: 1000; } #back-to-top.visible { opacity: 1; pointer-events: auto; } #additional-filters-container { display: flex; flex-wrap: wrap; column-gap: 2rem; row-gap: 0.8rem; padding-bottom: 0.8rem; justify-content: center; align-items: center; font-family: var(--font-main); } .filter-checkbox, .filter-select-display { display: inline-flex; align-items: center; line-height: 1.2rem; font-size: 1.0rem; color: var(--color-text-main); } .filter-button-select { font: inherit; color: inherit; background: transparent; border: none; outline: none; cursor: pointer; } .filter-checkbox { gap: 0.35rem; cursor: pointer; } .filter-checkbox input[type="checkbox"] { -webkit-appearance: none; -moz-appearance: none; appearance: none; width: 1rem; height: 1rem; padding: 0; margin: 0; cursor: pointer; vertical-align: middle; background-repeat: no-repeat; background-position: center; background-size: 100% 100%; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><rect x='2' y='2' width='12' height='12' rx='2' fill='none' stroke='%23fdb1fc' stroke-width='2'/></svg>"); background-color: transparent; border: none; } .filter-checkbox input[type="checkbox"]:checked { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><rect x='2' y='2' width='12' height='12' rx='2' fill='%23fdb1fc' stroke='%23fdb1fc' stroke-width='2'/></svg>"); } .filter-checkbox input[type="checkbox"]:disabled { cursor: not-allowed; pointer-events: none; } .custom-select { position: relative; display: inline-flex; align-items: center; font-family: var(--font-main); } .filter-select-display { display: inline-block; vertical-align: middle; box-sizing: border-box; max-width: 300px; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 0; } .custom-select { min-width: 0; } .custom-select select { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer; border: none; background: transparent; z-index: 1; -webkit-appearance: none; -moz-appearance: none; appearance: none; } .filter-select::before { content: ""; position: static; margin-right: 0.3rem; pointer-events: none; width: 1rem; height: 1rem; background-repeat: no-repeat; background-position: center; background-size: 100% 100%; background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><polygon points='1,3 15,3 8,14' fill='none' stroke='%23b7a5db' stroke-width='2' stroke-linejoin='round'/></svg>"); opacity: 1; } .filter-select.has-selection::before { background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><polygon points='1,3 15,3 8,14' fill='%23b7a5db' stroke='%23b7a5db' stroke-width='2' stroke-linejoin='round'/></svg>"); } .filter-select:has(select:disabled)::before { cursor: not-allowed; } .month-timeline-bar { padding: 0; background-color: var(--bg-month-header); position: relative; display: flex; align-items: center; justify-content: center; } .month-timeline-bar.hidden { display: none; } .month-timeline-content-wrapper { position: relative; max-width: 60rem; width: 100%; margin: 0 auto; } .month-timeline-scroll-wrapper { overflow-x: auto; overflow-y: hidden; -webkit-overflow-scrolling: touch; scrollbar-width: none; position: relative; } .month-timeline-scroll-wrapper::-webkit-scrollbar { display: none; } .month-timeline-container { display: flex; gap: 0.8rem; padding: 0.5rem 1rem; box-sizing: border-box; width: 100%; min-width: fit-content; justify-content: space-between; } .month-timeline-item { font-family: var(--font-main); font-weight: normal; font-size: 1.4rem; padding: 0.2rem 0; cursor: pointer; white-space: nowrap; color: var(--color-text-inverted) !important; background: transparent; border-top: 0.2rem solid transparent; border-bottom: 0.2rem solid transparent; transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, opacity 0.2s ease-in-out; user-select: none; opacity: 0.8; } @media (hover: hover) { .month-timeline-item:hover { opacity: 1 !important; } } .month-timeline-item.active { opacity: 1; font-weight: bold; border-bottom-color: var(--color-accent); } .month-timeline-item.today { opacity: 1; font-weight: bold; color: var(--color-accent) !important; } .month-timeline-item:disabled { cursor: not-allowed; pointer-events: none; } .month-timeline-scroll-indicator { position: absolute; top: 0; bottom: 0; z-index: 2; background: var(--bg-month-header); color: var(--color-text-inverted) !important; border: none; font-size: 1.4rem; padding: 0rem; cursor: pointer; opacity: 0.8; transition: opacity 0.2s ease; pointer-events: auto; display: flex; align-items: center; } @media (hover: hover) { .month-timeline-scroll-indicator:hover { opacity: 1; background: var(--bg-month-header); } } .month-timeline-scroll-indicator.left { left: 0; padding-left: 0.5rem; padding-right: 1.5rem; background: linear-gradient(to right, var(--bg-month-header) 70%, transparent); } .month-timeline-scroll-indicator.right { right: 0; padding-left: 1.5rem; padding-right: 0.5rem; background: linear-gradient(to left, var(--bg-month-header) 70%, transparent); } .month-timeline-scroll-indicator:disabled { cursor: not-allowed; pointer-events: none; } .month-timeline-scroll-indicator.hidden { opacity: 0; pointer-events: none; } .rotating { animation: spin 2s linear infinite; }}.kiosk-hide-scrollbars{-ms-overflow-style:none!important;scrollbar-width:none!important}.kiosk-hide-scrollbars::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.kiosk-hide-cursor,.kiosk-hide-cursor body{height:100%;min-height:100%}.kiosk-hide-cursor,.kiosk-hide-cursor *{cursor:none!important}.internal-mode body{background:var(--bg-page);transition:color .2s ease-in-out,background-color .2s ease-in-out}.reception-mode{font-size:32px}.reception-mode body{background:var(--bg-page);margin:.5rem}.reception-mode #calendar-wrapper{max-width:unset}.reception-event-item{border-width:.5rem!important}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}