.filters-sidebar{width:var(--filter-sidebar-width);flex-shrink:0;display:flex;flex-direction:column;max-height:calc(100vh - var(--spacing-3xl) * 2);overflow:hidden}.filters-content{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-2xl);padding-right:var(--spacing-sm)}.filters-content::-webkit-scrollbar{width:6px}.filters-content::-webkit-scrollbar-track{background:transparent}.filters-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.filters-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.filter-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.filter-title{font-size:var(--font-sm);font-weight:600;letter-spacing:.05em;color:var(--color-accent);margin:0;display:flex;align-items:center;gap:var(--spacing-sm)}.filter-title:before{content:"";width:8px;height:8px;background:var(--color-accent);border-radius:var(--radius-full);display:inline-block}.filter-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.filter-row.date-only{grid-template-columns:1fr}.filter-input{background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-md);padding:var(--spacing-sm);color:var(--text-primary);font-size:var(--font-md);outline:none;transition:all var(--transition-fast)}.filter-input:focus{border-color:var(--border-input-focus);background:var(--bg-input-focus)}.filter-input::placeholder{color:var(--text-placeholder)}.filter-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.filter-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-sm) center;padding-right:var(--spacing-xl)}.filter-select:hover{border-color:var(--color-accent)}.filter-select option{background:#161a26;color:#c8ccdc;padding:var(--spacing-sm)}.price-range{display:flex;flex-direction:column;gap:var(--spacing-lg)}.dual-range-slider{position:relative;height:24px;width:calc(100% - 24px);padding:0 12px}.range-slider{-webkit-appearance:none;appearance:none;width:100%;height:var(--slider-track-height);background:transparent;border-radius:calc(var(--slider-track-height) / 2);outline:none;position:absolute;top:50%;transform:translateY(-50%);pointer-events:none}.range-slider::-webkit-slider-runnable-track{width:100%;height:var(--slider-track-height);background:var(--border-input);border-radius:calc(var(--slider-track-height) / 2)}.range-slider::-moz-range-track{width:100%;height:var(--slider-track-height);background:var(--border-input);border-radius:calc(var(--slider-track-height) / 2)}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-accent);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);pointer-events:auto;border:2px solid var(--bg-primary);box-shadow:0 0 0 1px var(--color-accent)}.range-slider::-moz-range-thumb{width:var(--slider-thumb-size);height:var(--slider-thumb-size);background:var(--color-accent);border:2px solid var(--bg-primary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);pointer-events:auto;box-shadow:0 0 0 1px var(--color-accent)}.range-slider::-webkit-slider-thumb:hover{transform:scale(1.2);background:var(--color-accent-hover);box-shadow:0 0 0 2px var(--color-accent-hover)}.range-slider::-moz-range-thumb:hover{transform:scale(1.2);background:var(--color-accent-hover);box-shadow:0 0 0 2px var(--color-accent-hover)}.range-max::-webkit-slider-runnable-track{background:transparent}.range-max::-moz-range-track{background:transparent}.range-min{z-index:1}.range-max{z-index:2}.price-labels{display:flex;justify-content:space-between;font-size:var(--font-sm);color:var(--text-muted)}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:var(--font-md);color:var(--text-secondary);transition:color var(--transition-fast)}.checkbox-label:hover{color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:var(--checkbox-size);height:var(--checkbox-size);border-radius:var(--radius-sm);cursor:pointer;accent-color:var(--color-primary)}.checkbox-label input[type=checkbox]:not(:checked){background-color:var(--bg-input);appearance:none}.metro-line-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.metro-dropdown__trigger{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;text-align:left}.metro-dropdown__list{position:fixed;background:var(--bg-primary);border:1px solid var(--border-input);border-radius:var(--radius-md);overflow-y:auto;z-index:300;box-shadow:0 8px 24px #00000080;padding:var(--spacing-xs) 0}.metro-dropdown__list::-webkit-scrollbar{width:4px}.metro-dropdown__list::-webkit-scrollbar-track{background:transparent}.metro-dropdown__list::-webkit-scrollbar-thumb{background:#fff3;border-radius:2px}.metro-dropdown__item{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;color:var(--text-secondary);font-size:var(--font-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.metro-dropdown__item:hover{background:var(--bg-input-focus);color:var(--text-primary)}.metro-dropdown__item--active{color:var(--color-accent)}.filter-actions{flex-shrink:0;display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-lg);border-top:1px solid var(--border-primary);margin-top:var(--spacing-lg)}.btn-apply,.btn-clear{padding:var(--spacing-md) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:var(--font-sm);font-weight:600;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase}.btn-apply{background:var(--btn-primary-bg);color:var(--text-primary)}.btn-apply:hover{transform:translateY(-2px);box-shadow:var(--shadow-button)}.btn-clear{background:var(--btn-secondary-bg);color:var(--text-secondary);border:1px solid var(--border-button-secondary)}.btn-clear:hover{background:var(--btn-secondary-hover);color:var(--text-primary)}.btn-apply:disabled,.btn-clear:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-apply:disabled:hover,.btn-clear:disabled:hover{transform:none;box-shadow:none}.filters-header{display:none;justify-content:space-between;align-items:center;padding-bottom:var(--spacing-lg);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--border-primary)}.filters-title{margin:0;font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.filters-close-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-button-secondary);border:1px solid var(--border-button-secondary);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filters-close-btn:hover{background:var(--bg-button-secondary-hover);color:var(--text-primary);border-color:var(--border-hover)}@media(max-width:900px){.filters-sidebar{position:fixed;top:0;left:0;width:100%;max-width:360px;height:100vh;max-height:100vh;background:var(--bg-primary);z-index:200;padding:var(--spacing-xl);overflow:hidden;transform:translate(-100%);transition:transform var(--transition-normal) ease-out;box-shadow:4px 0 24px #0006}.filters-sidebar--open{transform:translate(0)}.filters-header{display:flex}.filter-row{grid-template-columns:1fr 1fr}}@media(max-width:400px){.filters-sidebar{max-width:100%}.filter-row{grid-template-columns:1fr}}.range-slider-container [data-scope=slider][data-part=root]{width:200px}.range-slider-container [data-scope=slider][data-part=root]>div:first-child{display:flex;justify-content:space-between}.range-slider-container [data-scope=slider][data-part=label]{margin-right:.5rem}.range-slider-container [data-scope=slider][data-part=control]{display:flex;align-items:center;position:relative;padding-block:.625rem}.range-slider-container [data-scope=slider][data-part=track]{height:4px;border-radius:9999px;flex:1;background:var(--colors-bg-bold)}.range-slider-container [data-scope=slider][data-part=range]{height:100%;border-radius:inherit;background:var(--btn-primary-bg)}.range-slider-container [data-scope=slider][data-part=range][data-disabled]{background:#9ae6b4}.range-slider-container [data-scope=slider][data-part=thumb]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:9999px;background:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.range-slider-container [data-scope=slider][data-part=thumb]:is(:focus,[data-focus]){outline:2px solid hsl(204,100%,40%)}.range-slider-container [data-scope=slider][data-part=thumb][data-disabled]{background:#e2e8f0}.venue-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-normal)}.venue-card:hover{transform:translateY(-4px);border-color:var(--border-hover);box-shadow:var(--shadow-card)}.venue-image{width:100%;height:var(--venue-image-height);overflow:hidden;background:var(--bg-image-placeholder)}.venue-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.venue-card:hover .venue-image img{transform:scale(1.05)}.venue-content{padding:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-md);height:calc(100% - var(--venue-image-height))}.venue-name{font-size:var(--font-xl);font-weight:700;margin:0;color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em}.venue-subtitle{font-size:var(--font-sm);color:var(--text-muted);margin:0;line-height:1.4;font-weight:400}.venue-divider{width:100%;height:1px;background:var(--border-primary);margin:var(--spacing-sm) 0}.venue-slots{display:flex;flex-direction:column;gap:var(--spacing-lg)}.slot-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.slot-date{font-size:var(--font-sm);color:var(--text-muted);font-weight:400;margin-bottom:var(--spacing-xs)}.slot-times{display:flex;flex-direction:column;gap:var(--spacing-sm)}.slot-row{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.time-chip{background:var(--bg-chip);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-xl);font-size:var(--font-sm);font-weight:500;white-space:nowrap;transition:all var(--transition-fast);cursor:pointer;border:2px solid transparent;font-family:inherit;outline:none}.time-chip:hover{background:var(--bg-chip-hover);transform:translateY(-1px)}.time-chip:focus-visible{border-color:var(--color-accent)}.time-chip--selected{background:var(--color-accent);color:var(--bg-primary);border-color:var(--color-accent);font-weight:600}.time-chip--selected:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.venue-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm);margin-top:auto}.btn-book,.btn-info{padding:var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-xs);font-weight:600;letter-spacing:.05em;cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase}.btn-book{background:var(--btn-primary-bg);color:var(--text-primary)}.btn-book:hover{transform:translateY(-2px);box-shadow:var(--shadow-button)}.btn-info{background:var(--btn-secondary-bg);color:var(--text-secondary);border:1px solid var(--border-button-secondary)}.btn-info:hover{background:var(--btn-secondary-hover);color:var(--text-primary)}@media(max-width:600px){.venue-actions{grid-template-columns:1fr}.btn-book,.btn-info{width:100%}}.venues-grid-container{flex:1}.venues-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-2xl);align-content:start;overflow-y:auto;max-height:calc(100vh - var(--spacing-3xl) * 2);padding-right:var(--spacing-sm)}.venues-grid::-webkit-scrollbar{width:8px}.venues-grid::-webkit-scrollbar-track{background:transparent}.venues-grid::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.venues-grid::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.no-venues{grid-column:1 / -1;text-align:center;padding:4rem var(--spacing-3xl);color:var(--text-disabled)}.no-venues p{font-size:var(--font-lg);margin:0}.loading-message{grid-column:1 / -1;text-align:center;padding:4rem var(--spacing-3xl);color:var(--text-secondary)}.loading-message p{font-size:var(--font-lg);margin:0}.error-message{grid-column:1 / -1;text-align:center;padding:4rem var(--spacing-3xl);color:#f44;background:#ff44441a;border-radius:var(--radius-lg)}.error-message p{font-size:var(--font-lg);margin:0}@media(max-width:1200px){.venues-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media(max-width:900px){.venues-grid{grid-template-columns:1fr;max-height:none;overflow-y:visible;padding-right:0}}.booking-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeIn var(--transition-fast) ease-out}.booking-modal{background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp var(--transition-normal) ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.booking-modal__close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:var(--spacing-xs);transition:color var(--transition-fast);z-index:10}.booking-modal__close:hover{color:var(--text-primary)}.booking-modal__title{font-size:var(--font-xl);font-weight:600;color:var(--text-primary);margin:0;padding:var(--spacing-xl) var(--spacing-2xl);border-bottom:1px solid var(--border-primary)}.booking-modal__content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);padding:var(--spacing-2xl)}.booking-modal__info{display:flex;flex-direction:column;gap:var(--spacing-xl)}.booking-info__venue{display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-info__venue-name{font-size:var(--font-base);font-weight:600;color:var(--text-primary);margin:0}.booking-info__venue-address{font-size:var(--font-sm);color:var(--text-muted);margin:0}.booking-info__slots{display:flex;flex-direction:column;gap:var(--spacing-md)}.booking-info__slot-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:var(--spacing-lg);align-items:center;font-size:var(--font-sm);color:var(--text-secondary)}.booking-info__slot-date{color:var(--text-muted)}.booking-info__slot-time{color:var(--text-secondary)}.booking-info__slot-duration{color:var(--text-muted)}.booking-info__slot-price{color:var(--text-primary);font-weight:500;text-align:right}.booking-info__total{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-lg);border-top:1px solid var(--border-primary)}.booking-info__total-label{font-size:var(--font-base);font-weight:600;color:var(--color-accent)}.booking-info__total-value{font-size:var(--font-xl);font-weight:700;color:var(--color-accent)}.booking-modal__form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.booking-form__section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.booking-form__label{font-size:var(--font-sm);color:var(--text-muted);font-weight:500}.booking-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.booking-form__field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.booking-form__input,.booking-form__select{background:var(--bg-input);border:1px solid var(--border-input);border-radius:var(--radius-md);padding:var(--spacing-md);color:var(--text-primary);font-size:var(--font-md);font-family:inherit;outline:none;transition:all var(--transition-fast)}.booking-form__input:focus,.booking-form__select:focus{border-color:var(--color-accent);background:var(--bg-input-focus)}.booking-form__input::placeholder{color:var(--text-placeholder)}.booking-form__input--error{border-color:#f44336}.booking-form__error{font-size:var(--font-xs);color:#f44336}.booking-form__select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ffffff' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;padding-right:var(--spacing-2xl)}.booking-form__select option{background:var(--bg-primary);color:var(--text-primary)}.booking-form__submit{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--spacing-lg);font-size:var(--font-md);font-weight:600;cursor:pointer;transition:all var(--transition-fast);margin-top:var(--spacing-md)}.booking-form__submit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.booking-form__submit:active{transform:translateY(0)}.booking-modal__confirm{display:flex;flex-direction:column;gap:var(--spacing-xl);padding:var(--spacing-2xl)}.booking-confirm__contact{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-lg);background:var(--bg-card);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.booking-confirm__contact-title{font-size:var(--font-sm);font-weight:600;color:var(--text-muted);margin:0 0 var(--spacing-xs) 0;text-transform:uppercase;letter-spacing:.05em}.booking-confirm__contact p{margin:0;font-size:var(--font-md);color:var(--text-secondary)}.booking-confirm__actions{display:flex;gap:var(--spacing-md)}.booking-confirm__btn-back{flex:1;background:var(--bg-button-secondary);color:var(--text-secondary);border:1px solid var(--border-button-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);font-size:var(--font-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.booking-confirm__btn-back:hover{background:var(--bg-button-secondary-hover);color:var(--text-primary)}.booking-confirm__btn-confirm{flex:2;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--spacing-lg);font-size:var(--font-md);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.booking-confirm__btn-confirm:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.booking-modal__status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);padding:var(--spacing-3xl) var(--spacing-2xl);min-height:300px;text-align:center}.booking-status__spinner{width:48px;height:48px;border:3px solid var(--border-primary);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-status__icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;border-radius:50%}.booking-status__icon--success{background:#10b98126;color:#10b981}.booking-status__icon--error{background:#f4433626;color:#f44336}.booking-status__title{font-size:var(--font-xl);font-weight:600;color:var(--text-primary);margin:0}.booking-status__text{font-size:var(--font-md);color:var(--text-muted);margin:0;max-width:400px}.booking-status__actions{display:flex;gap:var(--spacing-md)}.booking-status__btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:var(--radius-md);padding:var(--spacing-md) var(--spacing-2xl);font-size:var(--font-md);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.booking-status__btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98166}.booking-status__btn--secondary{background:var(--bg-button-secondary);color:var(--text-secondary);border:1px solid var(--border-button-secondary)}.booking-status__btn--secondary:hover{background:var(--bg-button-secondary-hover);color:var(--text-primary);box-shadow:none;transform:none}@media(max-width:700px){.booking-modal__content{grid-template-columns:1fr;gap:var(--spacing-xl)}.booking-modal__info{padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-primary)}.booking-info__slot-row{grid-template-columns:1fr auto auto;gap:var(--spacing-sm)}.booking-info__slot-date{grid-column:1 / -1}.booking-form__row{grid-template-columns:1fr}}@media(max-width:500px){.booking-modal-overlay{padding:0}.booking-modal{max-width:100%;max-height:100vh;height:100vh;border-radius:0;border:none}.booking-modal__title{padding:var(--spacing-lg);font-size:var(--font-lg)}.booking-modal__content,.booking-modal__confirm{padding:var(--spacing-lg)}}:root{--bg-primary: #0a0e1a;--bg-card: rgba(255, 255, 255, .03);--bg-card-hover: rgba(255, 255, 255, .05);--bg-input: rgba(255, 255, 255, .05);--bg-input-focus: rgba(255, 255, 255, .08);--bg-button-secondary: rgba(255, 255, 255, .05);--bg-button-secondary-hover: rgba(255, 255, 255, .08);--bg-image-placeholder: rgba(255, 255, 255, .05);--bg-tag: rgba(255, 255, 255, .1);--bg-chip: rgba(255, 255, 255, .12);--bg-chip-hover: rgba(255, 255, 255, .18);--border-primary: rgba(255, 255, 255, .08);--border-hover: rgba(255, 255, 255, .15);--border-input: rgba(255, 255, 255, .1);--border-input-focus: var(--color-accent);--border-button-secondary: rgba(255, 255, 255, .1);--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .8);--text-tertiary: rgba(255, 255, 255, .7);--text-muted: rgba(255, 255, 255, .6);--text-disabled: rgba(255, 255, 255, .5);--text-placeholder: rgba(255, 255, 255, .3);--color-accent: #00d9ff;--color-accent-hover: #00e5ff;--color-accent-light: rgba(0, 217, 255, .1);--color-primary: #f4366f;--gradient-primary: linear-gradient(135deg, #f4366f 0%, #e91e63 100%);--gradient-card: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);--btn-primary-bg: var(--gradient-primary);--btn-primary-shadow: rgba(244, 54, 111, .4);--btn-secondary-bg: var(--bg-button-secondary);--btn-secondary-hover: var(--bg-button-secondary-hover);--shadow-card: 0 8px 24px rgba(0, 0, 0, .3);--shadow-button: 0 4px 12px rgba(244, 54, 111, .4);--radius-sm: 3px;--radius-md: 6px;--radius-lg: 12px;--radius-xl: 20px;--radius-full: 50%;--spacing-xs: .35rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.25rem;--spacing-2xl: 1.5rem;--spacing-3xl: 2rem;--font-xs: .7rem;--font-sm: .75rem;--font-md: .875rem;--font-base: 1rem;--font-lg: 1.125rem;--font-xl: 1.5rem;--transition-fast: .2s;--transition-normal: .3s;--transition-slow: .5s;--filter-sidebar-width: 300px;--venue-image-height: 180px;--checkbox-size: 16px;--slider-thumb-size: 16px;--slider-track-height: 4px}.place-booking{display:flex;height:100vh;background:var(--bg-primary);color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;gap:var(--spacing-3xl);padding:var(--spacing-3xl);overflow:hidden;position:relative}.filter-toggle-btn{display:none;position:fixed;bottom:var(--spacing-xl);right:var(--spacing-xl);z-index:100;background:var(--gradient-primary);color:var(--text-primary);border:none;border-radius:var(--radius-xl);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-md);font-weight:600;cursor:pointer;box-shadow:var(--shadow-button);transition:all var(--transition-fast);align-items:center;gap:var(--spacing-sm)}.filter-toggle-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f4366f80}.filter-toggle-btn:active{transform:translateY(0)}.filter-toggle-btn svg{flex-shrink:0}.filter-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:199;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--transition-fast) ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:900px){.place-booking{flex-direction:column;padding:var(--spacing-lg);padding-bottom:calc(var(--spacing-lg) + 60px);overflow-y:auto}.filter-toggle-btn{display:flex}.filter-overlay{display:block}}@media(max-width:600px){.place-booking{padding:var(--spacing-sm);padding-bottom:calc(var(--spacing-sm) + 60px)}.filter-toggle-btn{bottom:var(--spacing-md);right:var(--spacing-md)}}.validation-error-toast{position:fixed;bottom:var(--spacing-3xl);left:50%;transform:translate(-50%);background:#f44336;color:#fff;padding:var(--spacing-md) var(--spacing-xl);border-radius:var(--radius-md);font-size:var(--font-md);font-weight:500;z-index:1001;box-shadow:0 4px 12px #f4433666;animation:toastSlideUp var(--transition-normal) ease-out}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(max-width:600px){.validation-error-toast{left:var(--spacing-md);right:var(--spacing-md);transform:none;bottom:calc(var(--spacing-md) + 60px)}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}
