@charset "UTF-8";:root{--color-brand-primary: #2b2b2b;--color-brand-secondary: #1a1a1a;--color-accent: #d97706;--color-accent-dark: #b45309;--color-accent-subtle: #fef3c7;--color-text-primary: #1f1f1f;--color-text-secondary: #525252;--color-text-muted: #737373;--color-text-light: #a3a3a3;--color-link: #9f1239;--color-link-hover: #7f1d1d;--color-focus: #d97706;--color-focus-ring: rgba(217, 119, 6, .15);--color-bg-primary: #fafaf9;--color-bg-secondary: #f5f5f4;--color-bg-tertiary: #e7e5e4;--color-bg-hover: #fef3c7;--color-bg-active: #fde68a;--color-border-light: #f5f5f4;--color-border: #e7e5e4;--color-border-dark: #d6d3d1;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-white: #ffffff;--color-success: #059669;--color-warning: #d97706;--color-error: #dc2626;--color-info: #0284c7;--color-error-50: #fef2f2;--color-error-200: #fecaca;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-error-800: #991b1b;--color-success-50: #f0fdf4;--color-success-200: #bbf7d0;--color-success-600: #059669;--color-success-alt: #28a745;--color-success-800: #166534;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-400: #ffc107;--color-warning-600: #d97706;--color-warning-800: #92400e;--color-info-50: #eff6ff;--color-info-100: #dbeafe;--color-info-500: #3b82f6;--color-info-600: #0284c7;--color-info-800: #1e40af;--color-search-bg: #fafaf9;--color-search-border: #e7e5e4;--color-search-focus-bg: #fff;--color-nav-text: #525252;--color-nav-active: #9f1239;--color-nav-hover-bg: #fafaf9;--color-nav-active-bg: #fff7ed;--color-social-instagram-bg: #E1306C;--color-social-instagram-text: #ffffff;--color-social-spotify-bg: #1DB954;--color-social-spotify-text: #ffffff;--color-social-youtube-bg: #FF0000;--color-social-youtube-text: #ffffff;--color-social-website-bg: #374151;--color-social-website-text: #ffffff;--color-social-lemonrock-bg: #FCD34D;--color-social-lemonrock-text: #1f1f1f;--color-tag-1-bg: #fde4e6;--color-tag-1-text: #881337;--color-tag-1-border: #fbb9bf;--color-tag-2-bg: #e0f2fe;--color-tag-2-text: #0c4a6e;--color-tag-2-border: #b9e1fe;--color-tag-3-bg: #ddd6fe;--color-tag-3-text: #5b21b6;--color-tag-3-border: #c4b5fd;--color-tag-4-bg: #d1fae5;--color-tag-4-text: #065f46;--color-tag-4-border: #a7f3d0;--color-tag-5-bg: #fef3c7;--color-tag-5-text: #78350f;--color-tag-5-border: #fde68a;--color-tag-6-bg: #f3e8ff;--color-tag-6-text: #6b21a8;--color-tag-6-border: #e9d5ff;--color-tag-7-bg: #ffedd5;--color-tag-7-text: #7c2d12;--color-tag-7-border: #fed7aa;--color-tag-8-bg: #e0e7ff;--color-tag-8-text: #3730a3;--color-tag-8-border: #c7d2fe}:root{--admin-color-primary: #1e40af;--admin-color-primary-dark: #1e3a8a;--admin-color-primary-light: #3b82f6;--admin-color-accent: #f59e0b;--admin-color-accent-dark: #d97706;--admin-color-accent-light: #fbbf24;--admin-color-bg-primary: #f8fafc;--admin-color-bg-secondary: #f1f5f9;--admin-color-bg-tertiary: #e2e8f0;--admin-color-bg-nav: #0f172a;--admin-color-bg-nav-hover: #1e293b;--admin-color-border: #e2e8f0;--admin-color-border-dark: #cbd5e1;--admin-color-text-nav: #cbd5e1;--admin-color-text-nav-muted: #94a3b8;--admin-color-text-nav-active: #fff;--admin-color-success: #059669;--admin-color-success-dark: #047857;--admin-color-warning: #f59e0b;--admin-color-error: #dc2626;--admin-color-info: #0284c7;--role-color-super-admin: #7c3aed;--role-color-moderator: #3b82f6;--role-color-venue-owner: #10b981;--role-color-artist: #f59e0b;--role-color-user: #6b7280}:root{--font-family-serif: Georgia, "Times New Roman", serif;--font-family-sans: "Quicksand", system-ui, -apple-system, sans-serif;--font-size-xs: .694rem;--font-size-sm: .833rem;--font-size-base: 1rem;--font-size-lg: 1.2rem;--font-size-xl: 1.44rem;--font-size-2xl: 1.728rem;--font-size-3xl: 2.074rem;--font-size-4xl: 2.488rem;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--letter-spacing-tight: -.01em;--letter-spacing-normal: 0;--letter-spacing-wide: .01em;--letter-spacing-wider: .025em}:root{--container-width: 50rem;--max-width-content: 1400px;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-xs: .125rem;--radius-sm: .25rem;--radius-md: .5rem;--radius: .5rem;--radius-lg: .75rem;--radius-full: 9999px}:root{--z-base: 0;--z-card-link: 0;--z-interactive: 1;--z-venue-link: 2;--z-dropdown: 100;--z-sticky: 200;--z-header: 300;--z-quick-filters: 40;--z-floating-action-button: 50;--z-filter-drawer: 500;--z-modal-backdrop: 900;--z-modal: 1000;--z-tooltip: 1100;--z-skip-link: 50;--z-skip-link-focus: 1001}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-small{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-secondary)}.font-italic{font-style:italic}.font-medium{font-weight:var(--font-weight-medium)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mt-0{margin-top:0}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.container{max-width:var(--container-width);margin:0 auto;padding:1rem}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.border-bottom{border-bottom:1px solid var(--color-border-light)}.border-bottom-section{border-bottom:1px solid var(--color-border-light);padding-bottom:.5rem;margin-bottom:.75rem}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}@media (min-width: 30rem){.mobile-up\:block{display:block}.mobile-up\:hidden{display:none}.mobile-up\:flex{display:flex}}@media (min-width: 48rem){.tablet-up\:block{display:block}.tablet-up\:hidden{display:none}.tablet-up\:flex{display:flex}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-40px;left:6px;background:var(--color-bg-primary);color:var(--color-text-primary);padding:.5rem 1rem;text-decoration:none;border-radius:4px;z-index:var(--z-skip-link)}.skip-link:focus{top:6px;z-index:var(--z-skip-link-focus);box-shadow:0 2px 4px #0000001a;outline:2px solid var(--color-focus);outline-offset:2px}@media (prefers-contrast: high){.site-header{border-bottom-width:2px}.site-search__wrapper{border-width:2px}.site-header__nav-link:focus,.site-search__button:focus,.search-result:focus{outline-width:3px}}svg{vertical-align:middle;flex-shrink:0}.icon-inline{display:inline-flex;align-items:center;gap:.375rem}.event-item__icon,.user-nav__icon{vertical-align:middle;margin-right:.25rem}svg:not([fill]){color:inherit}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;line-height:var(--line-height-relaxed)}body{font-family:var(--font-family-sans);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background-color:var(--color-bg-primary);margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-sans);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);color:var(--color-text-primary);margin:0 0 1rem}h1{font-size:var(--font-size-3xl)}@media (min-width: 30rem){h1{font-size:var(--font-size-4xl)}}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}p{margin:0 0 1rem}small{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-secondary)}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-link-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}ul,ol{margin:0 0 1rem;padding-left:1.5rem}li{margin-bottom:.25rem}button,input,select,textarea{font-family:inherit;font-size:inherit}button{background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer}button:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}img{max-width:100%;height:auto}table{border-collapse:collapse;width:100%}:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.page-layout{width:100%;min-height:100vh;display:flex;flex-direction:column}.page-content{flex:1;margin:0 1rem}.homepage-layout{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);max-width:var(--max-width-content, 1400px);margin:0 auto;padding:var(--spacing-sm) 0}@media (min-width: 768px){.homepage-layout{padding:var(--spacing-md) var(--spacing-lg)}}@media (min-width: 1024px){.homepage-layout{grid-template-columns:240px 1fr;gap:var(--spacing-lg);padding:var(--spacing-lg)}}.homepage-layout__events{grid-column:1;min-width:0}@media (min-width: 1024px){.homepage-layout__events{grid-column:2}}.detail-filters{display:none}@media (min-width: 1024px){.detail-filters{display:block;grid-column:1;grid-row:1;position:sticky;top:var(--spacing-md);height:fit-content;max-height:calc(100vh - var(--spacing-lg) * 2);overflow-y:auto}}.button{display:inline-block;padding:.75rem 1.5rem;border:none;border-radius:6px;font-weight:500;font-size:1rem;text-decoration:none;text-align:center;cursor:pointer;transition:all .2s ease;font-family:inherit}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:var(--color-link);color:var(--color-white)}.button--primary:hover:not(:disabled){background:var(--color-link-hover)}.button--primary:focus{outline:none;box-shadow:0 0 0 3px var(--color-focus-ring)}.admin-page .button--primary{background:var(--admin-color-primary)}.admin-page .button--primary:hover:not(:disabled){background:var(--admin-color-primary-dark)}.admin-page .button--primary:focus{box-shadow:0 0 0 3px #1e40af26}.button--secondary{background:var(--color-text-secondary);color:var(--color-white)}.button--secondary:hover:not(:disabled){background:var(--color-text-primary)}.button--secondary:focus{outline:none;box-shadow:0 0 0 3px #52525226}.button--danger{background:var(--color-error);color:var(--color-white)}.button--danger:hover:not(:disabled){background:var(--color-error-700)}.button--danger:focus{outline:none;box-shadow:0 0 0 3px #dc262626}.button--outline{background:transparent;border:1px solid var(--color-border-dark);color:var(--color-text-primary)}.button--outline:hover:not(:disabled){background:var(--color-bg-secondary);border-color:var(--color-text-secondary)}.button--outline:focus{outline:none;box-shadow:0 0 0 3px var(--color-focus-ring)}.button--small{padding:.5rem 1rem;font-size:.875rem}.button--large{padding:1rem 2rem;font-size:1.125rem}.button--full{width:100%;display:block}.quick-nav{display:flex;align-items:center;justify-content:center;gap:1.5rem;border-bottom:1px solid var(--color-border-light);padding-bottom:.5rem;margin-bottom:.75rem}@media (min-width: 30rem){.quick-nav{gap:2rem}}.quick-nav a{color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-base);padding:.25rem 0;border-bottom:3px solid transparent;transition:all .2s ease;font-weight:var(--font-weight-medium)}.quick-nav a:hover{color:var(--color-text-primary);border-bottom-color:var(--color-border)}.quick-nav a.active{color:var(--color-link);border-bottom-color:var(--color-link)}.quick-nav{display:flex;gap:1.5rem;justify-content:center;margin:2rem 0;padding:1rem 0;border-bottom:1px solid var(--color-border-light)}.quick-nav a{color:var(--color-link);text-decoration:none}.quick-nav a:hover{color:var(--color-link-hover);text-decoration:underline}.quick-nav a:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.quick-nav a{font-weight:var(--font-weight-medium);padding:.5rem 1rem;border-radius:var(--radius-sm);text-decoration:none}.quick-nav a:hover{background-color:var(--color-accent-subtle)}.quick-nav a.active{background-color:var(--color-accent);color:#fff}.quick-nav a.active:hover{background-color:var(--color-accent)}@media (max-width: 37.5rem){.quick-nav{gap:1rem}.quick-nav a{padding:.5rem .75rem;font-size:var(--font-size-sm)}}.sub-nav{background:var(--admin-color-bg-nav-hover, rgba(255, 255, 255, .05));border:1px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1));border-radius:8px;overflow:hidden;transition:all .2s ease}@media (min-width: 768px){.sub-nav{position:absolute;top:calc(100% + .5rem);right:0;min-width:280px;max-width:320px;z-index:var(--z-dropdown);box-shadow:0 4px 12px #0000004d;opacity:0;pointer-events:none;transform:translateY(-10px)}.sub-nav[data-state=expanded]{opacity:1;pointer-events:auto;transform:translateY(0)}}@media (max-width: 767px){.sub-nav{position:static;width:100%;margin-top:.5rem;border-radius:6px;max-height:0;opacity:0;pointer-events:none;overflow:hidden}.sub-nav[data-state=expanded]{max-height:400px;opacity:1;pointer-events:auto;overflow:visible}}.sub-nav__mobile-header{display:none}@media (max-width: 767px){.sub-nav__mobile-header{display:block;padding:.75rem 1rem;background:var(--admin-color-bg-nav, #1a1a1a);border-bottom:1px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1))}}.sub-nav__mobile-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--admin-color-text-nav, #9ca3af)}.sub-nav__list{list-style:none;margin:0;padding:.5rem 0}@media (max-width: 767px){.sub-nav__list{padding:0}}.sub-nav__item{margin:0}.sub-nav__link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:var(--admin-color-text-nav, #9ca3af);text-decoration:none;transition:all .2s ease;cursor:pointer}.sub-nav__link:hover{background:var(--admin-color-bg-nav-hover, rgba(255, 255, 255, .05));color:var(--admin-color-text-nav-active, white)}.sub-nav__link:focus{outline:2px solid var(--admin-color-primary, #6366f1);outline-offset:-2px}@media (max-width: 767px){.sub-nav__link{padding:1rem;border-bottom:1px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1))}.sub-nav__link:last-child{border-bottom:none}}.sub-nav__icon{font-size:1.25rem;flex-shrink:0;width:24px;text-align:center}.sub-nav__content{display:flex;flex-direction:column;gap:.125rem;flex:1}.sub-nav__label{font-size:.875rem;font-weight:500;color:var(--admin-color-text-nav-active, white);line-height:1.2}.sub-nav__description{font-size:.75rem;color:var(--admin-color-text-nav, #9ca3af);line-height:1.3}[data-has-subnav=true]{position:relative}@media (min-width: 768px){[data-has-subnav=true][data-sub-nav-open=true]{background:var(--admin-color-success-dark, #047857)}[data-has-subnav=true][data-sub-nav-open=true]:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid var(--admin-color-bg-nav-hover, rgba(255, 255, 255, .05));z-index:calc(var(--z-dropdown) + 1)}}@media (max-width: 767px){[data-has-subnav=true][data-sub-nav-open=true]{background:var(--admin-color-success-dark, #047857)}}.site-header{background:var(--admin-color-bg-nav, #1a1a1a);border-bottom:3px solid var(--admin-color-primary, #6366f1);position:sticky;top:0;z-index:var(--z-header)}.site-header__container{max-width:1400px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;justify-content:space-between;min-height:60px;gap:2rem}@media (max-width: 639px){.site-header__container{padding:0 .75rem;gap:.5rem;min-height:56px}}.site-header__user{display:flex;align-items:center;gap:1rem;margin-left:auto}@media (max-width: 639px){.site-header__user{gap:.5rem}}.site-header__user-submenu{position:relative;display:flex;flex-direction:column}@media (max-width: 767px){.site-header__user-submenu{width:100%}}.site-header__brand{display:flex;align-items:center;gap:.75rem}.site-header__logo{text-decoration:none;color:var(--admin-color-text-nav-active, white);font-weight:600;font-size:1.125rem;white-space:nowrap}.site-header__logo:hover{color:var(--admin-color-accent-light, #818cf8)}@media (max-width: 639px){.site-header__logo{font-size:.9rem}}.site-header__logo h1{margin:0;font-size:inherit;font-weight:inherit;color:inherit;line-height:1.2;letter-spacing:inherit}.site-header__nav{display:flex;gap:.5rem;justify-content:flex-end;list-style:none;margin:0;padding:0;align-items:center}@media (max-width: 639px){.site-header__nav{gap:.25rem}}.site-header__nav-item{margin:0}.site-header__search{max-width:1400px;margin:0 auto;padding:0 1rem}.site-header__nav-link{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;color:var(--admin-color-text-nav, #9ca3af);text-decoration:none;font-weight:500;font-size:.9rem;border-radius:6px;transition:all .2s ease}.site-header__nav-link:hover{background:var(--admin-color-bg-nav-hover, rgba(255, 255, 255, .05));color:var(--admin-color-text-nav-active, white)}.site-header__nav-link.active,.site-header__nav-link--active{background:var(--admin-color-primary, #6366f1);color:var(--admin-color-text-nav-active, white)}.site-header__nav-link.active:hover,.site-header__nav-link--active:hover{background:var(--admin-color-primary-dark, #4f46e5)}.site-header__nav-link:focus{outline:2px solid var(--color-focus);outline-offset:2px}@media (max-width: 639px){.site-header__nav-link{padding:.5rem .75rem;font-size:.85rem}}@media (max-width: 639px){.site-header__nav-link--secondary{display:none}}.site-header__user-info{display:flex;align-items:center;gap:.75rem;color:var(--admin-color-text-nav, #9ca3af);font-size:.875rem}@media (max-width: 639px){.site-header__user-info{display:none}}.site-header__avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1));object-fit:cover;flex-shrink:0}.site-header__avatar-placeholder{width:32px;height:32px;border-radius:50%;background:var(--admin-color-primary, #6366f1);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem;border:2px solid var(--admin-color-primary-light, #818cf8);flex-shrink:0}.site-header__user-name{color:var(--admin-color-text-nav-active, white);font-weight:500}.site-header__role-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;border-radius:4px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap;flex-shrink:0}.site-header__role-badge--super-admin{background:var(--role-color-super-admin);color:#fff}.site-header__role-badge--moderator{background:var(--role-color-moderator);color:#fff}.site-header__role-badge--venue-owner{background:var(--role-color-venue-owner);color:#fff}.site-header__role-badge--artist{background:var(--role-color-artist);color:#fff}.site-header__user-icon{flex-shrink:0}.site-header__user-link{text-decoration:none;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.375rem;white-space:nowrap;background:transparent;border:none;font-family:inherit;color:inherit}.site-header__user-link:focus{outline:2px solid var(--color-focus);outline-offset:2px}@media (max-width: 639px){.site-header__user-link{padding:.5rem;min-width:40px}}@media (max-width: 639px){.site-header__user-link-text{display:none}}.site-header__user-link--login{background:var(--admin-color-primary, #6366f1);color:#fff;border:1px solid var(--admin-color-primary, #6366f1)}.site-header__user-link--login:hover{background:var(--admin-color-primary-dark, #4f46e5);border-color:var(--admin-color-primary-dark, #4f46e5)}.site-header__user-link--admin{background:transparent;border:1px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1));color:var(--admin-color-text-nav, #9ca3af)}.site-header__user-link--admin:hover{background:var(--admin-color-bg-nav-hover, rgba(255, 255, 255, .05));border-color:var(--admin-color-primary, #6366f1);color:var(--admin-color-primary, #6366f1)}.site-header__user-link--logout{background:transparent;border:1px solid var(--admin-color-border-dark, rgba(255, 255, 255, .1));color:var(--admin-color-text-nav, #9ca3af)}.site-header__user-link--logout:hover{background:var(--admin-color-error, #ef4444);border-color:var(--admin-color-error, #ef4444);color:#fff}.site-header__user-link--submit{background:var(--admin-color-success, #059669);color:#fff;border:1px solid var(--admin-color-success, #059669)}.site-header__user-link--submit:hover{background:var(--admin-color-success-dark, #047857);border-color:var(--admin-color-success-dark, #047857)}.page-intro{text-align:center;margin:2rem 0}.page-intro h2{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:var(--color-text-primary)}.page-intro .page-date{margin:0;font-size:1rem;color:var(--color-text-muted);font-weight:400}.super-admin-nav{background:var(--role-color-super-admin);border-bottom:1px solid rgba(255,255,255,.15);position:sticky;top:60px;z-index:calc(var(--z-header) - 1)}@media (max-width: 639px){.super-admin-nav{top:56px}}.super-admin-nav__container{max-width:1400px;margin:0 auto;padding:0 1rem}@media (max-width: 639px){.super-admin-nav__container{padding:0 .75rem}}.super-admin-nav__list{display:flex;gap:.25rem;list-style:none;margin:0;padding:0;align-items:center}@media (max-width: 767px){.super-admin-nav__list{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.super-admin-nav__list::-webkit-scrollbar{display:none}}.super-admin-nav__item{margin:0;flex-shrink:0}.super-admin-nav__link{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;color:#ffffffd9;text-decoration:none;font-weight:500;font-size:.875rem;border-radius:6px;transition:all .2s ease;white-space:nowrap}.super-admin-nav__link:hover{background:#ffffff1a;color:#fff}.super-admin-nav__link:focus{outline:2px solid rgba(255,255,255,.4);outline-offset:2px}@media (max-width: 639px){.super-admin-nav__link{padding:.5rem .75rem;font-size:.8rem;gap:.375rem}}.super-admin-nav__link--active{background:#ffffff26;color:#fff}.super-admin-nav__link--active:hover{background:#fff3}.super-admin-nav__icon{flex-shrink:0}@media (max-width: 639px){.super-admin-nav__icon{width:14px;height:14px}}@media (max-width: 639px){.super-admin-nav__label{font-size:0}}.site-search{position:relative;width:100%;max-width:480px;margin:1.5rem auto;padding:0 1rem}@media (max-width: 767px){.site-search{max-width:100%;margin:1rem auto}}.site-search__form{position:relative}.site-search__wrapper{position:relative;display:flex;align-items:center;background:var(--color-search-bg);border:1px solid var(--color-search-border);border-radius:8px;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.site-search__wrapper:focus-within{border-color:var(--color-focus);background:var(--color-search-focus-bg);box-shadow:0 0 0 3px var(--color-focus-ring)}.site-search__input{flex:1;border:none;background:transparent;padding:.875rem 1.25rem;font-size:var(--font-size-base);color:var(--color-text-primary);outline:none;min-height:52px}@media (max-width: 767px){.site-search__input{padding:1rem 1.25rem;min-height:56px;font-size:var(--font-size-base)}}.site-search__input::placeholder{color:var(--color-text-light)}.site-search__input:focus{outline:none}.site-search__button{background:none;border:none;padding:1rem;color:var(--color-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .2s ease;min-width:52px;min-height:52px}@media (max-width: 767px){.site-search__button{padding:1.125rem;min-width:56px;min-height:56px}}.site-search__button:hover{color:var(--color-focus)}.site-search__button:focus{outline:2px solid var(--color-focus);outline-offset:2px;color:var(--color-focus)}.site-search__button svg{width:22px;height:22px}@media (max-width: 767px){.site-search__button svg{width:24px;height:24px}}.site-search__form.search-enhanced .site-search__button{padding:.5rem}.site-search__form.search-enhanced .site-search__button svg{width:16px;height:16px}.site-search__results{position:absolute;top:100%;left:0;right:0;background:var(--color-bg-primary);border:1px solid var(--color-border);border-top:none;border-radius:0 0 8px 8px;box-shadow:0 4px 6px -1px #0000001a;z-index:1000;max-height:400px;overflow-y:auto}.search-result{display:block;padding:1rem;border-bottom:1px solid var(--color-border-light);text-decoration:none;color:inherit;transition:background-color .1s ease}.search-result:hover,.search-result--highlighted{background-color:var(--color-bg-secondary)}.search-result:focus{outline:2px solid var(--color-focus);outline-offset:-2px;background-color:var(--color-bg-secondary)}.search-result__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.search-result__type{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .5rem;border-radius:4px;background:var(--color-border);color:var(--color-text-muted)}.search-result__type--event{background:var(--color-bg-active);color:var(--color-brand-secondary)}.search-result__type--venue{background:#0596691a;color:var(--color-success)}.search-result__title{margin:0;font-size:.875rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.search-result__metadata{margin:0;font-size:.75rem;color:var(--color-text-muted);line-height:1.3}.user-nav{width:100%;background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:.5rem 0}.user-nav__container{max-width:1200px;margin:0 auto;padding:0 1rem;display:flex;align-items:center;gap:1rem;justify-content:flex-end}@media (max-width: 767px){.user-nav__container{justify-content:center;gap:.75rem}}.user-nav__user{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:6px;background:var(--color-bg-secondary);border:1px solid var(--color-border)}@media (max-width: 767px){.user-nav__user{padding:.5rem .75rem}}.user-nav__avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;flex-shrink:0}.user-nav__name{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 767px){.user-nav__name{max-width:150px}}.user-nav__link{text-decoration:none;color:var(--color-nav-text);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);padding:.5rem 1rem;border-radius:6px;transition:all .2s ease;min-height:44px;display:flex;align-items:center;justify-content:center;white-space:nowrap}@media (max-width: 767px){.user-nav__link{min-height:48px;padding:.625rem 1rem}}.user-nav__link:hover{background:var(--color-nav-hover-bg);color:var(--color-nav-active)}.user-nav__link:focus{outline:2px solid var(--color-focus);outline-offset:2px}.user-nav__link--login{background:var(--color-brand-primary);color:var(--color-bg-primary);border:1px solid var(--color-brand-primary)}.user-nav__link--login:hover{background:var(--color-brand-secondary);color:var(--color-bg-primary);border-color:var(--color-brand-secondary)}.user-nav__link--admin{background:var(--color-bg-secondary);border:1px solid var(--color-border)}.user-nav__link--admin:hover{background:var(--color-nav-hover-bg);border-color:var(--color-brand-primary);color:var(--color-brand-primary)}.user-nav__link--logout{border:1px solid var(--color-border)}.user-nav__link--logout:hover{color:var(--color-error);border-color:var(--color-error);background:var(--color-error-50)}.event-list{margin:2rem 0;display:flex;flex-direction:column;gap:3rem}.event-list__date-section{display:flex;flex-direction:column}.event-list__date-header{position:sticky;top:63px;z-index:var(--z-sticky);background-color:var(--color-bg-secondary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0;padding:.75rem 1rem;border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary)}@media (max-width: 639px){.event-list__date-header{top:59px}}.event-list__items{display:flex;flex-direction:column;gap:.75rem}.no-events{text-align:center;padding:3rem 2rem;color:var(--color-text-secondary);border:1px dashed var(--color-border);margin:2rem 0}.no-events p{margin:.5rem 0}.no-events a{color:var(--color-link);font-weight:var(--font-weight-medium)}.event-item{border-left:4px solid var(--color-accent);padding:.75rem 1rem;background:linear-gradient(90deg,var(--color-accent-subtle) 0%,var(--color-bg-primary) 5%);display:grid;grid-template-columns:auto 1fr auto;gap:.5rem 1rem;font-size:var(--font-size-sm);transition:all .2s ease;align-items:start;border-radius:0;border-top:none;border-right:none;border-bottom:1px solid var(--color-border)}.event-item:hover{border-left-width:8px;box-shadow:0 2px 8px #0000001a}.event-item[data-clickable=true]{cursor:pointer}.event-item__star{grid-column:1;grid-row:1/3;display:flex;align-items:center;justify-content:center;background:var(--color-bg-primary);border:2px solid var(--color-border);border-radius:50%;width:2.5rem;height:2.5rem;cursor:pointer;transition:all .2s ease;flex-shrink:0;color:var(--color-text-light);padding:0;outline:none;position:relative;z-index:2}.event-item__star svg{width:1.25rem;height:1.25rem;transition:all .2s ease;stroke:var(--color-text-light);fill:none;stroke-width:2}.event-item__star:hover{border-color:var(--color-accent);background:var(--color-accent-subtle);transform:scale(1.1)}.event-item__star:hover svg{stroke:var(--color-accent-dark);fill:var(--color-accent-subtle)}.event-item__star:active{transform:scale(.95)}.event-item__star.is-selected{background:var(--color-bg-primary);border-color:var(--color-accent)}.event-item__star.is-selected svg{fill:var(--color-accent);stroke:var(--color-accent);animation:star-pop .4s ease}.event-item__star.is-selected:hover{background:var(--color-accent-subtle);border-color:var(--color-accent-dark);transform:scale(1.1)}.event-item__star.is-selected:hover svg{fill:var(--color-accent-dark);stroke:var(--color-accent-dark)}.event-item__star:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes star-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.event-item__image{width:100%;max-width:400px;margin-bottom:1rem;border-radius:var(--border-radius-md);overflow:hidden}.event-item__img{width:100%;height:auto;display:block}.event-item__content{grid-column:2;grid-row:1/3;display:flex;flex-direction:column;gap:.5rem;min-width:0}.event-item__title-row{display:flex;align-items:baseline;gap:.625rem;flex-wrap:wrap}.event-item__event-name{font-weight:600;color:var(--color-brand-primary);font-size:var(--font-size-base)}.event-item__link{color:var(--color-brand-primary);text-decoration:none}.event-item__link:hover{color:var(--color-link);text-decoration:underline}.event-item__recurring-icon{font-size:.875em;opacity:.8;margin-right:.25rem}.event-item__venue-time{display:flex;align-items:baseline;gap:.5rem;font-size:var(--font-size-base);flex-wrap:wrap}.event-item__venue{color:var(--color-text-secondary);font-weight:500}.event-item__time{color:var(--color-accent-dark);font-weight:600}.event-item__date{color:var(--color-text-secondary);font-weight:500}.event-item__separator{color:var(--color-border-dark);font-weight:400}.event-item__meta{display:flex;gap:.625rem;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-xs);flex-wrap:wrap}.event-item__distance{font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.event-item__artists{display:inline-flex;gap:.375rem;flex-wrap:wrap}.event-item__artist{background:var(--color-bg-secondary);color:var(--color-text-secondary);padding:.125rem .5rem;border-radius:var(--radius-sm);font-size:.625rem;font-weight:500}.event-item__tags{display:inline-flex;gap:.375rem;flex-wrap:wrap}.event-item__tag{border:1px solid var(--color-border);color:var(--color-text-muted);padding:.0625rem .4375rem;border-radius:1rem;font-size:.625rem;font-weight:500;background:transparent;transition:all .15s ease;cursor:pointer}.event-item__tag:hover{opacity:.85;transform:translateY(-1px)}.event-item__price{grid-column:3;grid-row:1/3;display:flex;align-items:center;font-weight:700;color:var(--color-accent-dark);font-size:var(--font-size-xl);flex-shrink:0}@media (max-width: 37.5rem){.event-item{gap:.375rem .75rem;border-left:none;padding:.625rem .875rem .625rem .75rem}.event-item__star{width:2rem;height:2rem}.event-item__star svg{width:1rem;height:1rem}.event-item__title-row{gap:.5rem}.event-item__event-name,.event-item__venue-time{font-size:var(--font-size-sm)}.event-item__meta{font-size:.625rem;gap:.5rem}.event-item__distance{color:var(--color-accent-dark);font-weight:600;font-size:var(--font-size-sm)}.event-item__separator{display:none}.event-item__price{font-size:var(--font-size-lg)}}.event-detail__hero-image{width:100%;max-width:1200px;margin:0 auto 2rem;border-radius:var(--border-radius-lg);overflow:hidden}.event-detail__hero-img{width:100%;height:auto;display:block}.event-details{margin:2rem 0}.event-details__meta{display:grid;gap:2rem;margin-bottom:3rem}@media (min-width: 30rem){.event-details__meta{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}.event-details__meta h2{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.event-details__meta p{margin:0;font-size:var(--font-size-base);color:var(--color-text-primary)}.event-details__datetime p{display:flex;align-items:center;gap:.5rem;margin:.25rem 0}.event-details__datetime .event-details__time{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.event-details__icon{flex-shrink:0;color:var(--color-text-secondary)}.event-details__icon-inline{display:inline-block;vertical-align:middle;margin-right:.25rem}.event-details__venue .venue-link{color:var(--color-link);text-decoration:none}.event-details__venue .venue-link:hover{color:var(--color-link-hover);text-decoration:underline}.event-details__venue .venue-link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.event-details__venue .venue-link{font-weight:var(--font-weight-medium);font-size:var(--font-size-lg)}.event-details__price .price-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.event-details__age .age-tag{background:var(--color-accent-subtle);color:inherit;display:inline-block;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:.375rem .75rem;font-size:var(--font-size-sm)}.event-details__artists{margin:2rem 0;padding:2rem 0;border-top:1px solid var(--color-border-light)}.event-details__artists h2{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;display:flex;align-items:center}.event-details__artists .artist-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:1rem}.event-details__artists .artist-list li{margin:0}.event-details__artists .artist-link{color:var(--color-link);text-decoration:none}.event-details__artists .artist-link:hover{color:var(--color-link-hover);text-decoration:underline}.event-details__artists .artist-link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.event-details__artists .artist-link{font-weight:var(--font-weight-medium);font-size:var(--font-size-base)}.event-details__notes{margin:2rem 0;padding:2rem 0}.event-details__notes h2{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.event-details__notes .notes-text{font-size:var(--font-size-base);line-height:1.6;color:var(--color-text-primary);white-space:pre-wrap}.event-details__tags{margin:2rem 0;padding:2rem 0;border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.event-details__tags h2{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.event-details__tags .tag-list{display:flex;gap:.75rem;flex-wrap:wrap}.event-details__tags .tag{background:var(--color-text-secondary);color:#fff;display:inline-block;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:.375rem .75rem;font-size:var(--font-size-sm)}.event-details__source{margin:2rem 0}.event-details__source h2{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.event-details__source .external-link{color:var(--color-link);text-decoration:none}.event-details__source .external-link:hover{color:var(--color-link-hover);text-decoration:underline}.event-details__source .external-link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.event-details__source .external-link{font-weight:var(--font-weight-medium)}.event-details__source .external-link:after{content:" ↗";font-size:var(--font-size-sm)}.event-details__actions{margin:3rem 0;padding-top:2rem;border-top:1px solid var(--color-border-light)}.event-details__actions .back-link{color:var(--color-link);text-decoration:none}.event-details__actions .back-link:hover{color:var(--color-link-hover);text-decoration:underline}.event-details__actions .back-link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.event-details__actions .back-link{font-weight:var(--font-weight-medium)}.event-filters{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem}.event-filters__header{display:flex;align-items:center;justify-content:flex-end;margin-bottom:.75rem}.event-filters__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0;color:var(--color-text-primary)}.event-filters__reset{background:none;border:none;color:var(--color-link);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;padding:.25rem .5rem;transition:color .2s}.event-filters__reset:hover{color:var(--color-link-hover);text-decoration:underline}.event-filters__form{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.event-filters__form{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}}@media (min-width: 1024px){.event-filters__form{grid-template-columns:repeat(4,1fr)}}.event-filters__section{display:flex;flex-direction:column;gap:.375rem}.event-filters__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.event-filters__input{width:100%;padding:.5rem .75rem;font-size:var(--font-size-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.event-filters__input:focus{outline:none;border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-ring)}.event-filters__checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary)}.event-filters__checkbox input[type=checkbox]{width:1rem;height:1rem;cursor:pointer}.event-filters__checkbox:hover{color:var(--color-text-primary)}.event-filters__actions{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}@media (min-width: 768px){.event-filters__actions{grid-column:1/-1}}@media (min-width: 1024px){.event-filters__actions{grid-column:4/-1;margin-top:0;padding-top:0;border-top:none;display:flex;align-items:flex-end}}.event-filters__submit{width:100%;padding:.625rem 1rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-bg-primary);background:var(--color-text-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:opacity .2s,transform .2s}.event-filters__submit:hover{opacity:.9}.event-filters__submit:active{transform:translateY(1px)}.event-filters__submit:disabled{opacity:.6;cursor:not-allowed}.event-filters__date-section,.event-filters__category-section{grid-column:1/-1;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.event-filters__category-section .event-filters__subsection-title{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.event-filters__category-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.event-filters__category-btn{padding:.5rem 1rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;transition:all .2s}.event-filters__category-btn:hover{border-color:var(--color-text-primary)}.event-filters__category-btn:active{transform:translateY(1px)}.event-filters__category-btn--active{background:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}.event-filters__category-btn--active:hover{opacity:.9}.event-filters__date-controls{display:flex;flex-direction:column;gap:1rem}@media (min-width: 768px){.event-filters__date-controls{flex-direction:row;align-items:flex-end;gap:1.5rem}}.event-filters__date-input-wrapper{flex:1;display:flex;flex-direction:column;gap:.375rem}.event-filters__quick-filters{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.event-filters__quick-filter{padding:.5rem 1rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;transition:all .2s}.event-filters__quick-filter:hover{background:var(--color-bg-secondary);border-color:var(--color-text-primary)}.event-filters__quick-filter:active{transform:translateY(1px)}.event-filters__quick-filter--active{background:var(--color-text-primary);color:var(--color-bg-primary);border-color:var(--color-text-primary)}.event-filters__quick-filter--active:hover{background-color:var(--color-text-primary);opacity:.9}.event-filters__quick-filter--clear{color:var(--color-error, #dc2626);border-color:var(--color-error, #dc2626)}.event-filters__quick-filter--clear:hover{background:var(--color-error, #dc2626);color:var(--color-bg-primary)}.event-filters__accessibility-section{grid-column:1/-1;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border)}.event-filters__details{border:none;padding:0;margin:0}.event-filters__summary{display:flex;align-items:center;gap:.5rem;cursor:pointer;list-style:none;padding:.75rem;margin:-.75rem;border-radius:var(--radius-sm);transition:background-color .2s;user-select:none}.event-filters__summary:hover{background-color:var(--color-bg-secondary)}.event-filters__summary::-webkit-details-marker{display:none}.event-filters__summary::marker{content:""}.event-filters__summary:before{content:"▶";display:inline-block;width:1rem;font-size:.75rem;transition:transform .2s;color:var(--color-text-secondary)}.event-filters__details[open] .event-filters__summary:before{transform:rotate(90deg)}.event-filters__subsection-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1}.event-filters__subsection-icon{font-size:1.25rem;line-height:1}.event-filters__active-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .375rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-bg-primary);background:var(--color-text-primary);border-radius:99px}.event-filters__details-content{margin-top:.75rem}.event-filters__fieldset{border:none;padding:0;margin:0 0 .75rem}.event-filters__fieldset:last-child{margin-bottom:0}.event-filters__legend{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.025em;margin-bottom:.625rem;padding:0}.event-filters__checkbox-group{display:grid;gap:.625rem}@media (min-width: 768px){.event-filters__checkbox-group{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.event-filters__checkbox-group{grid-template-columns:repeat(4,1fr)}}.quick-filters{position:static;background:#fff;border-bottom:1px solid var(--color-border-subtle, #e5e7eb);box-shadow:0 1px 3px #0000000d}.quick-filters__container{max-width:var(--max-width-content, 1400px);margin:0 auto;padding:var(--spacing-sm) var(--spacing-md)}@media (min-width: 1024px){.quick-filters__container{padding:var(--spacing-md) var(--spacing-lg)}}.quick-filters__search{margin-bottom:var(--spacing-sm)}@media (min-width: 768px){.quick-filters__search{margin-bottom:var(--spacing-md)}}.quick-filters__search-form{position:relative}.quick-filters__search-wrapper{display:flex;align-items:center;gap:var(--spacing-xs);background:var(--color-surface-elevated, #f9fafb);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 8px);padding:var(--spacing-xs);transition:all .2s ease}.quick-filters__search-wrapper:focus-within{border-color:var(--color-accent, #d97706);box-shadow:0 0 0 3px #d977061a}.quick-filters__search-input{flex:1;border:none;background:transparent;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-primary)}.quick-filters__search-input::placeholder{color:var(--color-text-tertiary, #9ca3af)}.quick-filters__search-input:focus{outline:none}@media (min-width: 768px){.quick-filters__search-input{font-size:var(--font-size-base)}}.quick-filters__search-button{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm, 4px);transition:all .2s ease}.quick-filters__search-button:hover{background:var(--color-surface-hover, #f3f4f6);color:var(--color-accent, #d97706)}.quick-filters__search-results{position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;background:#fff;border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;max-height:400px;overflow-y:auto;z-index:10}.quick-filters__search-result{display:block;padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;color:inherit;border-bottom:1px solid var(--color-border-subtle, #e5e7eb);transition:background .15s ease}.quick-filters__search-result:last-child{border-bottom:none}.quick-filters__search-result:hover,.quick-filters__search-result--highlighted{background:var(--color-surface-hover, #f9fafb)}.quick-filters__search-result-header{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.quick-filters__search-result-type{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.quick-filters__search-result-type--event{color:var(--color-accent, #d97706)}.quick-filters__search-result-type--venue{color:var(--color-link, #9f1239)}.quick-filters__search-result-title{flex:1;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-primary);margin:0}.quick-filters__search-result-metadata{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0}.quick-filters__dates{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm)}@media (min-width: 768px){.quick-filters__dates{gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}}.event-filters__quick-filter{padding:.25rem .75rem;background:var(--color-surface-elevated, #f9fafb);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap}.event-filters__quick-filter:hover:not(.event-filters__quick-filter--active){background:var(--color-surface-hover, #f3f4f6);border-color:var(--color-accent, #d97706);color:var(--color-text-primary)}.event-filters__quick-filter--active{background:var(--color-accent, #d97706);border-color:var(--color-accent, #d97706);color:#fff;font-weight:600}.event-filters__quick-filter--active:hover{background:var(--color-accent-dark, #b45309)}.quick-filters__categories{margin-bottom:var(--spacing-sm)}@media (min-width: 768px){.quick-filters__categories{margin-bottom:0}}.quick-filters__categories-scroll{display:flex;gap:var(--spacing-xs);flex-wrap:wrap;overflow-x:visible}@media (min-width: 768px){.quick-filters__categories-scroll{gap:var(--spacing-sm)}}.event-filters__category-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:.25rem .75rem;background:var(--color-surface-elevated, #f9fafb);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.event-filters__category-btn:hover:not(.event-filters__category-btn--active):not([aria-pressed=true]){background:var(--color-surface-hover, #f3f4f6);border-color:var(--color-accent, #d97706);color:var(--color-text-primary)}.event-filters__category-btn[aria-pressed=true],.event-filters__category-btn--active{background:var(--color-accent, #d97706);border-color:var(--color-accent, #d97706);color:#fff;font-weight:600}.event-filters__category-btn[aria-pressed=true]:hover,.event-filters__category-btn--active:hover{background:var(--color-accent-dark, #b45309)}.event-filters__category-count{font-size:var(--font-size-xs);opacity:.8}.detail-filters__form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.detail-filters__section{padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border-subtle, #e5e7eb)}.detail-filters__section:last-child{border-bottom:none;padding-bottom:0}.detail-filters__section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-base);font-weight:700;color:var(--color-text-primary);margin:0 0 var(--spacing-xs) 0}.detail-filters__section-icon{font-size:1.25rem;line-height:1}.detail-filters__section-content{display:flex;flex-direction:column;gap:var(--spacing-sm)}.detail-filters__details{border:none;margin:0;padding:0}.detail-filters__summary{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;font-weight:600;color:var(--color-text-primary);cursor:pointer;user-select:none;list-style:none}.detail-filters__summary::-webkit-details-marker{display:none}.detail-filters__summary:hover{color:var(--color-accent, #d97706)}.detail-filters__active-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--spacing-xs);background:var(--color-accent, #d97706);color:#fff;font-size:var(--font-size-xs);font-weight:700;border-radius:var(--radius-full, 9999px);margin-left:auto}.detail-filters__fieldset{border:none;margin:0;padding:0;margin-bottom:var(--spacing-sm)}.detail-filters__fieldset:last-child{margin-bottom:0}.detail-filters__legend{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-sm);padding:0}.detail-filters__checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-filters__checkbox{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:4px;border-radius:var(--radius-sm, 4px);transition:background .15s ease}.detail-filters__checkbox:hover{background:var(--color-surface-hover, #f9fafb)}.detail-filters__checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent, #d97706);border-radius:var(--radius-xs, 2px);flex-shrink:0}.detail-filters__checkbox span{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.4}.detail-filters__checkbox-large{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface-elevated, #f9fafb);border:1px solid var(--color-border, #d1d5db);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .2s ease}.detail-filters__checkbox-large:hover{background:var(--color-surface-hover, #f3f4f6);border-color:var(--color-accent, #d97706)}.detail-filters__checkbox-large input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-accent, #d97706);border-radius:var(--radius-xs, 2px);flex-shrink:0}.detail-filters__checkbox-large:has(input[type=checkbox]:checked){background:var(--color-accent-light, #fef3c7);border-color:var(--color-accent, #d97706)}.detail-filters__checkbox-large span{font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-primary);line-height:1.4}.detail-filters__actions{margin-top:var(--spacing-sm)}.detail-filters__submit{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-accent, #d97706);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.detail-filters__submit:hover{background:var(--color-accent-dark, #b45309)}.detail-filters__submit:active{transform:translateY(1px)}.location-selector{display:flex;flex-direction:column;gap:var(--spacing-md)}.location-selector__header{display:flex;flex-direction:column;gap:var(--spacing-xs)}.location-selector__text{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.5}.location-selector__text strong{color:var(--color-text-primary);font-weight:600}.location-selector__location{font-weight:600;color:var(--color-text-primary)}.location-selector__link{color:var(--color-link, #9f1239);text-decoration:none;font-weight:600}.location-selector__link:hover{text-decoration:underline}.location-selector__geolocation{font-size:var(--font-size-sm);color:var(--color-accent, #d97706);text-decoration:none;font-weight:600}.location-selector__geolocation:hover{text-decoration:underline}.location-selector__slider{display:flex;flex-direction:column;gap:var(--spacing-sm)}.location-selector__range{width:100%;height:8px;background:transparent;-webkit-appearance:none;appearance:none;cursor:pointer}.location-selector__range::-webkit-slider-track{width:100%;height:8px;background:linear-gradient(to right,var(--color-accent-light, #fef3c7) 0%,var(--color-accent, #d97706) 100%);border-radius:var(--radius-full, 9999px)}.location-selector__range::-moz-range-track{width:100%;height:8px;background:linear-gradient(to right,var(--color-accent-light, #fef3c7) 0%,var(--color-accent, #d97706) 100%);border-radius:var(--radius-full, 9999px)}.location-selector__range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:var(--color-accent, #d97706);border-radius:50%;cursor:grab;border:3px solid white;box-shadow:0 2px 6px #0003;transition:all .2s ease}.location-selector__range::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.05)}.location-selector__range::-moz-range-thumb{width:24px;height:24px;background:var(--color-accent, #d97706);border-radius:50%;cursor:grab;border:3px solid white;box-shadow:0 2px 6px #0003;transition:all .2s ease}.location-selector__range::-moz-range-thumb:active{cursor:grabbing;transform:scale(1.05)}.location-selector__range:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px #d9770633,0 2px 6px #0003}.location-selector__range:focus::-moz-range-thumb{box-shadow:0 0 0 4px #d9770633,0 2px 6px #0003}.location-selector__labels{display:flex;justify-content:space-between;align-items:center}.location-selector__label{font-size:var(--font-size-xs);color:var(--color-text-tertiary, #9ca3af);font-weight:500;transition:all .2s ease}.location-selector__label.is-active{color:var(--color-accent, #d97706);font-weight:700;transform:scale(1.1)}.venue-list{display:flex;flex-direction:column;gap:.75rem;margin:2rem 0}.no-venues{text-align:center;padding:3rem 2rem;color:var(--color-text-secondary);border:1px dashed var(--color-border);margin:2rem 0}.no-venues p{margin:.5rem 0}.venue-item{position:relative;padding:1rem;background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md)}.venue-item[data-clickable=true]{cursor:pointer;transition:all .2s ease}.venue-item[data-clickable=true]:hover{box-shadow:0 2px 8px #0000001a;transform:translateY(-1px);border-color:var(--color-link)}.venue-item__title{font-size:var(--font-size-base);margin:0 0 .5rem;font-weight:var(--font-weight-medium);line-height:1.3}.venue-item__link{color:var(--color-text-primary);text-decoration:none}.venue-item__link:before{content:"";position:absolute;inset:0;z-index:var(--z-card-link)}.venue-item__link:hover{color:var(--color-link);text-decoration:underline}.venue-item__meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:0;line-height:1.4}@media (max-width: 37.5rem){.venue-item__meta{gap:.5rem}}.venue-item__address,.venue-item__website{display:flex;align-items:center;gap:.25rem}.venue-item__website a{color:var(--color-link);text-decoration:none}.venue-item__website a:hover{color:var(--color-link-hover);text-decoration:underline}.venue-item__website a:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.venue-item__website a{position:relative;z-index:var(--z-venue-link)}.venue-details{margin:2rem 0;padding-bottom:2rem;border-bottom:1px solid var(--color-border-light)}.venue-details__website{margin:0}.venue-details__website a{color:var(--color-link);text-decoration:none}.venue-details__website a:hover{color:var(--color-link-hover);text-decoration:underline}.venue-details__website a:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.venue-details__website a{font-weight:var(--font-weight-medium)}.venue-events{margin:3rem 0 2rem}.venue-events h2{font-size:var(--font-size-2xl);margin:0 0 2rem;font-weight:var(--font-weight-normal);color:var(--color-text-secondary)}.accessibility-widget{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;margin:1.5rem 0}.accessibility-widget__heading{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.accessibility-widget__icon{font-size:1.5em;line-height:1}.accessibility-widget__content{display:flex;flex-direction:column;gap:1rem}.accessibility-widget__section{border-top:1px solid var(--color-border-light);padding-top:.75rem}.accessibility-widget__section:first-child{border-top:none;padding-top:0}.accessibility-widget__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem}.accessibility-widget__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.accessibility-widget__item{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--font-size-base)}.accessibility-widget__item--note{padding-left:calc(.5rem + 1.2em);font-style:italic;color:var(--color-text-secondary)}.accessibility-widget__indicator{display:inline-flex;align-items:center;justify-content:center;width:1.2em;height:1.2em;flex-shrink:0;font-weight:var(--font-weight-medium);border-radius:50%;font-size:.875em}.accessibility-widget__indicator[data-available=true]{color:var(--color-success);background:#0596691a}.accessibility-widget__indicator[data-available=false]{color:var(--color-error);background:#dc26261a}.accessibility-widget__label{flex:1;line-height:1.5}.accessibility-widget__notes{margin:0;padding:.75rem;background:var(--color-bg-secondary);border-left:3px solid var(--color-accent);font-size:var(--font-size-sm);line-height:1.6;color:var(--color-text-secondary)}.accessibility-widget__footer{border-top:1px solid var(--color-border-light);padding-top:.75rem}.accessibility-widget__link{color:var(--color-link);text-decoration:none}.accessibility-widget__link:hover{color:var(--color-link-hover);text-decoration:underline}.accessibility-widget__link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.accessibility-widget__link{display:inline-flex;align-items:center;gap:.5rem;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}@media (min-width: 48rem){.accessibility-widget{padding:1.5rem}}.search-form{margin:2rem 0}.search-form__input-wrapper{display:flex;gap:.5rem;max-width:32rem;margin:0 auto}@media (max-width: 37.5rem){.search-form__input-wrapper{flex-direction:column;gap:1rem}}.search-form__input{flex:1;padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background-color:var(--color-bg-primary);transition:border-color .2s ease}.search-form__input::placeholder{color:var(--color-text-muted)}.search-form__input:focus{outline:none;border-color:var(--color-accent)}.search-form__button{background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer}.search-form__button:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.search-form__button{padding:.75rem 1.5rem;background-color:var(--color-accent);color:#fff;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);cursor:pointer;transition:background-color .2s ease}.search-form__button:hover{background-color:var(--color-accent-dark)}.search-form__button:focus{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width: 37.5rem){.search-form__button{width:100%}}.search-results{margin:3rem 0 2rem}.search-results__header{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);margin:0 0 1.5rem;color:var(--color-text-secondary)}.search-results__list{border:1px solid var(--color-border-light);border-radius:var(--radius-md);overflow:hidden}.no-results{text-align:center;padding:3rem 2rem;color:var(--color-text-secondary);border:1px dashed var(--color-border);margin:2rem 0;padding:2rem}.no-results ul{text-align:left;max-width:20rem;margin:1rem auto 0}.no-results li{margin-bottom:.5rem}.search-help{margin:3rem 0 2rem;text-align:center}.search-help h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-normal);margin:0 0 1.5rem;color:var(--color-text-secondary)}.search-suggestions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.search-suggestion{color:var(--color-link);text-decoration:none}.search-suggestion:hover{color:var(--color-link-hover);text-decoration:underline}.search-suggestion:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.search-suggestion{padding:.5rem 1rem;background-color:var(--color-accent-subtle);border-radius:var(--radius-sm);text-decoration:none;font-weight:var(--font-weight-medium);transition:background-color .2s ease}.search-suggestion:hover{background-color:var(--color-accent);color:#fff}.search-result{display:block;padding:.75rem 1rem;border-bottom:1px solid var(--color-border-light);text-decoration:none;color:inherit;transition:background-color .2s ease}.search-result:hover,.search-result--highlighted{background-color:var(--color-accent-subtle)}.search-result:last-child{border-bottom:none}.search-result__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.search-result__type{background:var(--color-accent-subtle);color:inherit;display:inline-block;border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:.375rem .75rem;font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.search-result__type--event{background:var(--color-accent);color:#fff}.search-result__type--venue{background:var(--color-text-secondary);color:#fff}.search-result__title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin:0;color:var(--color-text-primary)}.search-result__metadata{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.3}.page-header{text-align:center;border-bottom:1px solid var(--color-border-light);padding:1rem 0 .5rem;margin-bottom:1rem}.page-header h1,.page-header h2{font-size:var(--font-size-2xl);margin:0;color:var(--color-text-primary);font-weight:var(--font-weight-normal);line-height:1.1}@media (min-width: 30rem){.page-header h1,.page-header h2{font-size:var(--font-size-3xl)}}.page-header .tagline{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:.125rem 0 0;font-style:italic;line-height:1.2}.page-header .date{font-size:var(--font-size-xs);color:var(--color-text-muted);margin:.125rem 0 0;line-height:1.2}.site-footer{margin-top:4rem;padding:2rem 0;background:var(--color-bg-secondary);border-top:2px solid var(--color-border);text-align:center}.site-footer p{margin:.25rem 0;font-weight:600;color:var(--color-text-primary)}.site-footer__tagline{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-secondary);font-weight:400!important;color:var(--color-text-secondary)!important;margin-top:.5rem!important}.error-content{text-align:center;max-width:600px;margin:2rem auto;padding:2rem}.error-content h2{color:var(--color-error);margin-bottom:1rem;font-size:1.5rem}.error-content p{color:var(--color-gray-500);margin-bottom:2rem;font-size:1.1rem}.error-actions{display:flex;flex-direction:column;gap:1rem;max-width:300px;margin:0 auto}.error-actions .back-link{display:inline-block;padding:.75rem 1.5rem;background:var(--color-gray-100);color:var(--color-gray-700);text-decoration:none;border-radius:6px;font-weight:500;transition:all .2s ease}.error-actions .back-link:hover{background:var(--color-gray-200);color:var(--color-gray-900)}@media (min-width: 640px){.error-actions{flex-direction:row;justify-content:center;max-width:none}}.form-field{margin-bottom:1.5rem}.form-field:last-child{margin-bottom:0}.form-field__label{display:block;font-weight:500;margin-bottom:.5rem;color:var(--color-text-primary);font-size:.9rem}.form-field__required{color:var(--color-error);margin-left:.25rem}.form-field__input,.form-field__textarea,.form-field__select{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-field__input:focus,.form-field__textarea:focus,.form-field__select:focus{outline:none;border-color:var(--color-link);box-shadow:0 0 0 .2rem var(--color-accent-subtle)}.form-field__input::placeholder,.form-field__textarea::placeholder,.form-field__select::placeholder{color:var(--color-text-muted);opacity:.6}.form-field__input--error,.form-field__textarea--error,.form-field__select--error{border-color:var(--color-error)}.form-field__input--error:focus,.form-field__textarea--error:focus,.form-field__select--error:focus{border-color:var(--color-error);box-shadow:0 0 0 .2rem #dc262640}.form-field__textarea{resize:vertical;min-height:100px}.form-field__select{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='%23333' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:12px;padding-right:2.5rem}.form-field__help{margin-top:.5rem;font-size:.875rem;color:var(--color-text-muted);line-height:1.4}.form-field__error{margin-top:.5rem;font-size:.875rem;color:var(--color-error);line-height:1.4}.form-field--error .form-field__label{color:var(--color-error)}.form-field__checkbox-group{display:flex;flex-direction:column;gap:.75rem}.form-field__checkbox-label{display:flex;align-items:center;cursor:pointer;user-select:none}.form-field__checkbox-label:hover .form-field__checkbox-text{color:var(--color-link)}.form-field__checkbox{width:18px;height:18px;margin-right:.5rem;cursor:pointer}.form-field__checkbox-text{font-size:.9rem;color:var(--color-text-primary);transition:color .15s ease}.form-field__input--datetime{max-width:300px}.form-field--venue .form-field__select option{padding:.5rem}.form-field--categories .form-field__checkbox-group{max-height:300px;overflow-y:auto;padding:.5rem;border:1px solid var(--color-border);border-radius:4px}@media (max-width: 639px){.form-field__input,.form-field__textarea,.form-field__select{font-size:16px}}.tag-input{position:relative;border:1px solid var(--color-gray-300);border-radius:6px;background:var(--color-white);padding:.5rem;min-height:42px}.tag-input:focus-within{outline:2px solid var(--color-info-500);outline-offset:2px;border-color:var(--color-info-500)}.tag-input__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.tag-input__tags:empty{margin-bottom:0}.tag-input__tag{display:inline-flex;align-items:center;gap:.375rem;background:var(--color-gray-200);color:var(--color-gray-700);padding:.25rem .5rem;border-radius:4px;font-size:.875rem;line-height:1.25}.tag-input__tag-remove{border:none;background:none;color:var(--color-gray-500);cursor:pointer;padding:0;font-size:1.25rem;line-height:1;width:1.25rem;height:1.25rem;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:all .15s}.tag-input__tag-remove:hover{background:var(--color-gray-300);color:var(--color-gray-800)}.tag-input__tag-remove:focus{outline:2px solid var(--color-info-500);outline-offset:1px}.tag-input__input-wrapper{display:flex;flex:1}.tag-input__input{border:none;outline:none;padding:.25rem 0;font-size:1rem;flex:1;min-width:120px;background:transparent}.tag-input__input::placeholder{color:var(--color-gray-400)}.tag-input__suggestions{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:200px;overflow-y:auto;z-index:50}.tag-input__suggestions[hidden]{display:none}.tag-input__suggestions-list{list-style:none;margin:0;padding:.25rem}.tag-input__suggestion-item{padding:.5rem .75rem;cursor:pointer;border-radius:4px;font-size:.875rem;transition:background .15s}.tag-input__suggestion-item:hover,.tag-input__suggestion-item[aria-selected=true]{background:var(--color-gray-100)}.tag-input__suggestion-item:active{background:var(--color-gray-200)}.venue-input{position:relative}.venue-input__selected{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.625rem .75rem;background:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:6px}.venue-input__selected-name{flex:1;font-size:1rem;color:var(--color-gray-800)}.venue-input__clear{border:none;background:none;color:var(--color-gray-500);cursor:pointer;padding:0;font-size:1.5rem;line-height:1;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s}.venue-input__clear:hover{background:var(--color-gray-200);color:var(--color-gray-800)}.venue-input__clear:focus{outline:2px solid var(--color-info-500);outline-offset:2px}.venue-input__input-wrapper{position:relative}.venue-input__input{width:100%;padding:.625rem .75rem;font-size:1rem;border:1px solid var(--color-gray-300);border-radius:6px;background:var(--color-white);transition:border-color .15s,box-shadow .15s}.venue-input__input:focus{outline:none;border-color:var(--color-info-500);box-shadow:0 0 0 3px #3b82f61a}.venue-input__input::placeholder{color:var(--color-gray-400)}.venue-input__suggestions{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:300px;overflow-y:auto;z-index:50}.venue-input__suggestions[hidden]{display:none}.venue-input__suggestions-list{list-style:none;margin:0;padding:.25rem}.venue-input__suggestion-item{padding:.625rem .75rem;cursor:pointer;border-radius:4px;font-size:.875rem;transition:background .15s;color:var(--color-gray-700)}.venue-input__suggestion-item:hover,.venue-input__suggestion-item[aria-selected=true]{background:var(--color-gray-100)}.venue-input__suggestion-item:active{background:var(--color-gray-200)}.artist-input{position:relative;border:1px solid var(--color-gray-300);border-radius:6px;background:var(--color-white);padding:.5rem;min-height:42px}.artist-input:focus-within{outline:2px solid var(--color-info-500);outline-offset:2px;border-color:var(--color-info-500)}.artist-input__selected-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.5rem}.artist-input__selected-list:empty{margin-bottom:0}.artist-input__selected-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--color-gray-100);border:1px solid var(--color-gray-200);border-radius:4px;transition:all .2s}.artist-input__selected-item:hover{background:var(--color-gray-200);border-color:var(--color-gray-300)}.artist-input__order{display:flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;background:var(--color-info-500);color:var(--color-white);font-size:.75rem;font-weight:600;border-radius:50%;line-height:1}.artist-input__name{flex:1;font-size:.875rem;color:var(--color-gray-800);font-weight:500}.artist-input__remove{border:none;background:none;color:var(--color-gray-500);cursor:pointer;padding:0;font-size:1.25rem;line-height:1;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s;flex-shrink:0}.artist-input__remove:hover{background:var(--color-gray-300);color:var(--color-gray-800)}.artist-input__remove:focus{outline:2px solid var(--color-info-500);outline-offset:1px}.artist-input__input-wrapper{display:flex;flex:1}.artist-input__input{border:none;outline:none;padding:.5rem 0;font-size:1rem;flex:1;min-width:120px;background:transparent}.artist-input__input::placeholder{color:var(--color-gray-400)}.artist-input__suggestions{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:6px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;max-height:250px;overflow-y:auto;z-index:50}.artist-input__suggestions[hidden]{display:none}.artist-input__suggestions-list{list-style:none;margin:0;padding:.25rem}.artist-input__suggestion-item{padding:.625rem .75rem;cursor:pointer;border-radius:4px;font-size:.875rem;transition:background .15s;color:var(--color-gray-800)}.artist-input__suggestion-item:hover,.artist-input__suggestion-item[aria-selected=true]{background:var(--color-gray-100)}.artist-input__suggestion-item:active{background:var(--color-gray-200)}.artist-input__selected-list:empty:after{content:"No artists added. Type to search or create new artists.";display:block;color:var(--color-gray-400);font-size:.875rem;font-style:italic;padding:.5rem 0}.admin-page{padding:2rem 1rem;background:var(--admin-color-bg-primary);min-height:calc(100vh - 60px)}.admin-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.admin-page__header h1{margin:0;color:var(--color-text-primary);font-size:2rem}@media (max-width: 639px){.admin-page__header{flex-direction:column;align-items:flex-start;gap:1rem}}.admin-form__section{background:var(--color-white);padding:2rem;margin-bottom:1.5rem;border-radius:8px;border:1px solid var(--admin-color-border);box-shadow:0 1px 3px #0000000d}.admin-form__section-title{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 639px){.form-row{grid-template-columns:1fr}}.admin-form__actions{display:flex;gap:1rem;justify-content:flex-start;padding:1.5rem 0}@media (max-width: 639px){.admin-form__actions{flex-direction:column}}.alert{padding:1rem;border-radius:6px;margin-bottom:1.5rem;line-height:1.5}.alert--error{background:var(--color-error-50);color:var(--color-error-800);border:1px solid var(--color-error-200)}.alert--success{background:var(--color-success-50);color:var(--color-success-800);border:1px solid var(--color-success-200)}.alert--warning{background:var(--color-warning-50);color:var(--color-warning-800);border:1px solid var(--color-warning-100)}.alert--info{background:var(--color-info-50);color:var(--color-info-800);border:1px solid var(--color-info-100)}.form-field__optional{font-weight:400;color:var(--color-text-muted);font-size:.9em}.admin-table{width:100%;border-collapse:collapse;background:var(--color-white);border-radius:8px;overflow:hidden;border:1px solid var(--admin-color-border);box-shadow:0 1px 3px #0000000d}.admin-table th{background:var(--admin-color-bg-secondary);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--color-text-primary);border-bottom:2px solid var(--admin-color-border-dark)}.admin-table td{padding:.75rem 1rem;border-bottom:1px solid var(--admin-color-border)}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover{background:var(--admin-color-bg-secondary)}.admin-filters{background:var(--color-white);border:1px solid var(--admin-color-border);border-radius:var(--radius-md);padding:.75rem;margin-bottom:1rem;box-shadow:0 1px 3px #0000000d}.admin-filters__form{display:flex;flex-direction:column;gap:.75rem}.admin-filters__row{display:grid;grid-template-columns:1fr;gap:.75rem;align-items:end}@media (min-width: 768px){.admin-filters__row{grid-template-columns:repeat(2,1fr) 140px}}@media (min-width: 1024px){.admin-filters__row{grid-template-columns:200px 280px 140px 140px auto}}.admin-filters__field{display:flex;flex-direction:column;gap:.25rem}.admin-filters__label{font-size:.8125rem;font-weight:500;color:var(--color-text-primary)}.admin-filters__select,.admin-filters__input{width:100%;padding:.5rem .75rem;font-size:.875rem;border:1px solid var(--admin-color-border);border-radius:var(--radius-sm);background:var(--color-bg-primary);color:var(--color-text-primary);transition:border-color .2s,box-shadow .2s}.admin-filters__select:focus,.admin-filters__input:focus{outline:none;border-color:var(--admin-color-primary);box-shadow:0 0 0 3px #007bff1a}.admin-filters__select{cursor:pointer}.admin-filters__status-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.admin-filters__status-btn{position:relative;display:inline-flex;align-items:center;padding:.5rem .875rem;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;background:var(--color-bg-secondary);border:1px solid var(--admin-color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;user-select:none}.admin-filters__status-btn input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.admin-filters__status-btn:hover{border-color:var(--color-text-primary);background:var(--color-bg-primary)}.admin-filters__status-btn input[type=checkbox]:checked+.admin-filters__status-label{font-weight:600}.admin-filters__status-btn[data-status=draft] input[type=checkbox]:checked~.admin-filters__status-label{color:var(--color-gray-900)}.admin-filters__status-btn[data-status=draft]:has(input[type=checkbox]:checked){background:var(--color-warning-400);border-color:var(--color-warning-400)}.admin-filters__status-btn[data-status=published] input[type=checkbox]:checked~.admin-filters__status-label{color:var(--color-white)}.admin-filters__status-btn[data-status=published]:has(input[type=checkbox]:checked){background:var(--color-success-alt);border-color:var(--color-success-alt)}.admin-filters__status-btn[data-status=cancelled] input[type=checkbox]:checked~.admin-filters__status-label{color:var(--color-white)}.admin-filters__status-btn[data-status=cancelled]:has(input[type=checkbox]:checked){background:var(--color-error);border-color:var(--color-error)}.admin-filters__status-label{transition:color .2s}.admin-filters__actions{display:flex;align-items:flex-end;gap:.5rem}@media (max-width: 767px){.admin-filters__actions{grid-column:1/-1}}.admin-filters__submit{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--color-white);background:var(--admin-color-primary);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background .2s,transform .1s;white-space:nowrap}.admin-filters__submit:hover{background:var(--admin-color-primary-dark)}.admin-filters__submit:active{transform:translateY(1px)}.admin-filters__clear{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:var(--admin-color-error, #dc3545);background:transparent;border:1px solid var(--admin-color-error, #dc3545);border-radius:var(--radius-sm);text-decoration:none;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center}.admin-filters__clear:hover{background:var(--admin-color-error);color:var(--color-white)}@media (max-width: 767px){.admin-filters__status-buttons{grid-column:1/-1}}.modal{border:none;padding:0;max-width:none;max-height:none;position:fixed;inset:0;width:100vw;height:100vh;background:var(--color-bg-primary);overflow-y:auto;overscroll-behavior:contain}@media (min-width: 768px){.modal{width:auto;height:auto;max-width:90vw;max-height:90vh;border-radius:12px;box-shadow:0 20px 60px #0000004d}}.modal::backdrop{background:#00000080}@media (min-width: 768px){.modal::backdrop{background:#00000080;backdrop-filter:blur(4px)}}@media (min-width: 768px){@starting-style{.modal{opacity:0;transform:translateY(-20px)}}.modal{opacity:1;transform:translateY(0);transition:opacity .2s ease,transform .2s ease,overlay .2s ease allow-discrete,display .2s ease allow-discrete}.modal:not([open]){opacity:0;transform:translateY(-20px)}}.modal__container{display:flex;flex-direction:column;min-height:100vh;justify-content:center}@media (min-width: 768px){.modal__container{min-height:auto;justify-content:initial}}.modal__header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border)}@media (min-width: 768px){.modal__header{padding:2rem}}.modal__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}@media (min-width: 768px){.modal__title{font-size:var(--font-size-2xl)}}.modal__close{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:background-color .15s,color .15s;flex-shrink:0}.modal__close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal__close:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.modal__close svg{width:20px;height:20px}.modal__content{flex:1;padding:1.5rem;overflow-y:auto}@media (min-width: 768px){.modal__content{padding:2rem}}.location-selector{margin:var(--spacing-md) 0;padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-sm)}.location-selector__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}@media (max-width: 767px){.location-selector__header{flex-direction:column;align-items:flex-start}}.location-selector__text{margin:0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.location-selector__location{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.location-selector__link{color:var(--color-link);text-decoration:none}.location-selector__link:hover{color:var(--color-link-hover);text-decoration:underline}.location-selector__link:focus-visible{outline:2px solid var(--color-link);outline-offset:2px}.location-selector__link{font-weight:var(--font-weight-medium);white-space:nowrap}.location-selector__geolocation{font-size:var(--font-size-sm)}.location-selector__slider{position:relative}.location-selector__range{width:100%;height:24px;appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer;margin-bottom:var(--spacing-sm)}.location-selector__range::-webkit-slider-runnable-track{width:100%;height:6px;background:var(--color-border);border-radius:var(--radius-xs)}.location-selector__range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--color-accent);border:3px solid var(--color-bg-primary);box-shadow:0 2px 4px #0003;cursor:pointer;margin-top:-9px;transition:transform .2s ease,box-shadow .2s ease}.location-selector__range::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 3px 8px #0000004d}.location-selector__range::-moz-range-track{width:100%;height:6px;background:var(--color-border);border-radius:var(--radius-xs);border:none}.location-selector__range::-moz-range-thumb{width:24px;height:24px;border:3px solid var(--color-bg-primary);border-radius:50%;background:var(--color-accent);box-shadow:0 2px 4px #0003;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.location-selector__range::-moz-range-thumb:hover{transform:scale(1.15);box-shadow:0 3px 8px #0000004d}.location-selector__range:focus{outline:none}.location-selector__range:focus::-webkit-slider-thumb{box-shadow:0 0 0 4px var(--color-focus-ring)}.location-selector__range:focus::-moz-range-thumb{box-shadow:0 0 0 4px var(--color-focus-ring)}.location-selector__labels{position:relative;display:flex;padding:0 12px}.location-selector__label{position:absolute;font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-regular);user-select:none;transition:all .2s ease;transform:translate(-50%)}.location-selector__label:nth-child(1){left:0%}.location-selector__label:nth-child(2){left:21.0526315789%}.location-selector__label:nth-child(3){left:47.3684210526%}.location-selector__label:nth-child(4){left:73.6842105263%}.location-selector__label:nth-child(5){left:100%}.location-selector__label.is-active{color:var(--color-accent);font-weight:var(--font-weight-bold);transform:translate(-50%) scale(1.1)}table[data-sortable] th[data-sort]{position:relative}table[data-sortable] th[data-sort] a{display:block;color:inherit;text-decoration:none;padding:inherit;margin:-1rem;padding:1rem;transition:background-color .15s ease}table[data-sortable] th[data-sort] a:hover{background-color:var(--admin-color-bg-secondary)}table[data-sortable] th[data-sort] a:focus-visible{outline:2px solid var(--admin-color-primary);outline-offset:-2px}table[data-sortable] th[data-sort] .sort-indicator{display:inline-block;margin-left:.25rem;color:var(--admin-color-primary);font-weight:var(--font-weight-bold)}table[data-sortable] th[data-sort].sorted-asc,table[data-sortable] th[data-sort].sorted-desc{background-color:var(--admin-color-bg-secondary)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.artist-extractor{width:100%;margin-bottom:var(--spacing-xl, 3rem);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg, 2rem)}@media (max-width: 767px){.artist-extractor{padding:var(--spacing-md, 1.5rem)}}.artist-extractor__header{margin-bottom:var(--spacing-md, 1.5rem)}.artist-extractor__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--spacing-xs, .5rem) 0}.artist-extractor__description{font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-secondary);margin:0;line-height:1.5}.artist-extractor__container{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 1.5rem);min-height:500px}@media (max-width: 1023px){.artist-extractor__container{grid-template-columns:1fr;gap:var(--spacing-sm, 1rem)}}.artist-extractor__pane{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md, 1.5rem);overflow-y:auto;max-height:70vh}@media (max-width: 1023px){.artist-extractor__pane{max-height:none}}.artist-extractor__pane--right{background:var(--color-code-bg, #1e1e1e);position:sticky;top:var(--spacing-sm, 1rem)}@media (max-width: 1023px){.artist-extractor__pane--right{position:relative;top:0}}.artist-extractor__input-section{display:flex;flex-direction:column;gap:var(--spacing-xs, .5rem)}.artist-extractor__label{display:block;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--spacing-xs, .25rem)}.artist-extractor__hint{display:block;font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);color:var(--color-text-secondary);margin-top:var(--spacing-xs, .25rem)}.artist-extractor__textarea{padding:.75rem 1rem;border:2px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-base);background-color:var(--color-bg-primary);transition:border-color .2s ease}.artist-extractor__textarea::placeholder{color:var(--color-text-muted)}.artist-extractor__textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.artist-extractor__textarea{width:100%;font-family:var(--font-family-mono, "Courier New", monospace);line-height:1.6;resize:vertical;min-height:400px}.artist-extractor__textarea::placeholder{color:var(--color-text-light);font-size:var(--font-size-xs)}.artist-extractor__preview-section{display:flex;flex-direction:column;gap:var(--spacing-sm, 1rem);height:100%}.artist-extractor__preview-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-code-text, #e5e5e5);margin:0 0 var(--spacing-sm, 1rem) 0;padding-bottom:var(--spacing-xs, .5rem);border-bottom:1px solid var(--color-code-border, #333);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-xs, .5rem)}.artist-extractor__confidence{display:inline-block;padding:var(--spacing-xs, .25rem) var(--spacing-sm, .75rem);background:var(--color-success-bg, rgba(34, 197, 94, .2));border:1px solid var(--color-success-border, rgba(34, 197, 94, .4));border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-success)}.artist-extractor__loading{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--color-bg-secondary);border-radius:4px;color:var(--color-text-secondary);animation:fadeIn .2s ease;flex-direction:column;padding:var(--spacing-xl, 3rem) var(--spacing-sm, 1rem);text-align:center;color:var(--color-text-muted);animation:slideInUp .2s ease}.artist-extractor__spinner{display:inline-block;width:32px;height:32px;border:3px solid var(--color-border);border-top-color:var(--color-link);border-radius:50%;animation:spin .6s linear infinite;border-color:var(--color-code-border, #444);border-top-color:var(--color-success)}.artist-extractor__error{margin-top:1rem;padding:1rem;background:var(--color-bg-primary);border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);animation:slideInUp .2s ease;background:var(--color-error-bg, rgba(239, 68, 68, .1));border-color:var(--color-error-border, rgba(239, 68, 68, .3));font-size:var(--font-size-sm)}.artist-extractor__error p{margin:0}.artist-extractor__json-preview{flex:1;overflow-y:auto;animation:slideInUp .2s ease}.artist-extractor__json-code{margin:0;padding:var(--spacing-sm, 1rem);background:var(--color-code-bg, #1e1e1e);border-radius:var(--radius-sm);font-family:var(--font-family-mono, "Courier New", monospace);font-size:var(--font-size-sm);line-height:1.8;overflow-x:auto}.artist-extractor__json-code code{color:var(--color-code-text, #d4d4d4)}.artist-extractor__json-line{padding-left:var(--spacing-sm, 1rem);transition:all .3s ease}.artist-extractor__json-brace{color:var(--color-code-text, #d4d4d4);font-weight:var(--font-weight-bold)}.artist-extractor__json-key{color:var(--color-code-property, #9cdcfe)}.artist-extractor__json-colon{color:var(--color-code-text, #d4d4d4)}.artist-extractor__json-value{transition:color .3s ease,text-shadow .3s ease}.artist-extractor__json-value--empty{color:var(--color-text-muted);font-style:italic}.artist-extractor__json-value--filled{color:var(--color-success);text-shadow:0 0 10px var(--color-success-glow, rgba(34, 197, 94, .3))}.artist-extractor__json-comma{color:var(--color-code-text, #d4d4d4)}.artist-extractor__empty{text-align:center;padding:3rem 2rem;color:var(--color-text-secondary);border:1px dashed var(--color-border);margin:2rem 0;min-height:200px;background:var(--color-code-bg, #1e1e1e);border:2px dashed var(--color-code-border, #333);color:var(--color-text-muted);font-size:var(--font-size-sm)}.artist-extractor__empty p{margin:0}.login-form-container[data-astro-cid-kl5b6njz]{width:100%}.login-page__alert[data-astro-cid-kl5b6njz]{padding:.875rem 1rem;border-radius:6px;margin-bottom:1.5rem;font-size:var(--font-size-sm)}.login-page__alert--error[data-astro-cid-kl5b6njz]{background:#fef2f2;color:var(--color-error);border:1px solid #fecaca}.login-page__alert--success[data-astro-cid-kl5b6njz]{background:#f0fdf4;color:var(--color-success);border:1px solid #bbf7d0}.login-form[data-astro-cid-kl5b6njz]{margin-bottom:1.5rem}.login-form__field[data-astro-cid-kl5b6njz]{margin-bottom:1.25rem}.login-form__label[data-astro-cid-kl5b6njz]{display:block;margin-bottom:.5rem;color:var(--color-text-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.login-form__input[data-astro-cid-kl5b6njz]{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:6px;font-size:var(--font-size-base);font-family:var(--font-family-sans);transition:border-color .15s,box-shadow .15s;color:var(--color-text-primary);background:var(--color-bg-primary)}.login-form__input[data-astro-cid-kl5b6njz]:focus{outline:none;border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-ring)}.login-form__button[data-astro-cid-kl5b6njz]{width:100%;padding:.875rem 1.5rem;border:none;border-radius:6px;background:var(--color-brand-primary);color:var(--color-bg-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);font-family:var(--font-family-sans);cursor:pointer;transition:all .2s}.login-form__button[data-astro-cid-kl5b6njz]:hover{background:var(--color-brand-secondary);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb66}.login-page__divider[data-astro-cid-kl5b6njz]{text-align:center;margin:1.5rem 0;position:relative}.login-page__divider[data-astro-cid-kl5b6njz]:before,.login-page__divider[data-astro-cid-kl5b6njz]:after{content:"";position:absolute;top:50%;width:calc(50% - 60px);height:1px;background:var(--color-border)}.login-page__divider[data-astro-cid-kl5b6njz]:before{left:0}.login-page__divider[data-astro-cid-kl5b6njz]:after{right:0}.login-page__divider-text[data-astro-cid-kl5b6njz]{background:var(--color-bg-primary);padding:0 1rem;color:var(--color-text-muted);font-size:var(--font-size-sm);position:relative}.oauth-buttons[data-astro-cid-kl5b6njz]{display:flex;flex-direction:column;gap:.75rem}.oauth-buttons__form[data-astro-cid-kl5b6njz]{width:100%}.oauth-buttons__button[data-astro-cid-kl5b6njz]{width:100%;padding:.875rem 1.5rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg-primary);color:var(--color-text-primary);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);font-family:var(--font-family-sans);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s}.oauth-buttons__button[data-astro-cid-kl5b6njz]:hover{background:var(--color-bg-secondary);border-color:var(--color-border-dark);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.oauth-buttons__icon[data-astro-cid-kl5b6njz]{flex-shrink:0}.login-modal__content[data-astro-cid-o4dbeirz]{display:flex;flex-direction:column;align-items:center;max-width:420px;margin:0 auto}.login-modal__message[data-astro-cid-o4dbeirz]{margin:0 0 1.5rem;padding:.75rem 1rem;background-color:var(--color-info-bg, #e3f2fd);color:var(--color-info-text, #1565c0);border-radius:4px;font-size:var(--font-size-sm);text-align:center}.login-modal__message[data-astro-cid-o4dbeirz].hidden{display:none}.login-modal__footer[data-astro-cid-o4dbeirz]{text-align:center;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--color-border)}.login-modal__link[data-astro-cid-o4dbeirz]{color:var(--color-link);text-decoration:none;font-size:var(--font-size-sm)}.login-modal__link[data-astro-cid-o4dbeirz]:hover{text-decoration:underline;color:var(--color-link-hover)}
