 * {margin: 0;padding: 0;box-sizing: border-box;font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;}:root {--primary-gradient: linear-gradient(135deg, #ff3e9d, #0b63f6);--secondary-gradient: linear-gradient(135deg, #8a2be2, #4cc9f0);--dark-bg: #121212;--card-bg: #1e1e1e;--light-text: #f5f5f5;--muted-text: #aaaaaa;--accent-color: #ff3e9d;--secondary-accent: #0b63f6;--success-color: #4cc9f0;--premium-color: #ff0050;--light-bg: #f5f5f5;--light-card-bg: #ffffff;--dark-text: #121212;--light-muted-text: #666666;}body {background-color: var(--dark-bg);color: var(--light-text);line-height: 1.6;}a {text-decoration: none;color: inherit;}@keyframes glowRotate {0% {box-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--accent-color), 0 0 30px var(--secondary-accent);}50% {box-shadow: 0 0 15px var(--secondary-accent), 0 0 25px var(--accent-color), 0 0 40px var(--accent-color);}100% {box-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--accent-color), 0 0 30px var(--secondary-accent);}}@keyframes ripple {0% {box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);}50% {box-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--accent-color), 0 0 30px var(--secondary-accent);}100% {box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);}}@keyframes vibrate {0% {transform: translateX(0);}25% {transform: translateX(-1px);}50% {transform: translateX(1px);}75% {transform: translateX(-1px);}100% {transform: translateX(0);}}button, .btn {cursor: pointer;border: none;padding: 12px 24px;border-radius: 6px;font-weight: 600;transition: all 0.3s ease;box-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--accent-color), 0 0 30px var(--secondary-accent);}button:hover, .btn:hover {transform: scale(1.05);animation: glowRotate 2s infinite;}button:active, .btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;transition: all 0.1s ease;}@keyframes gradientShift {0% {background-position: 0% 50%;}50% {background-position: 100% 50%;}100% {background-position: 0% 50%;}}.container {max-width: 1200px;margin: 0 auto;padding: 0 20px;}body.light-theme {background-color: var(--light-bg);color: var(--dark-text);}body.light-theme header {background-color: rgba(245, 245, 245, 0.9);border-bottom: 1px solid rgba(0, 0, 0, 0.1);}body.light-theme .card-bg, body.light-theme .event-card, body.light-theme .modal-content, body.light-theme .event-modal-content, body.light-theme .create-box, body.light-theme .premium-feature {background-color: var(--light-card-bg);box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);}body.light-theme .nav-link, body.light-theme .event-title, body.light-theme .section-title, body.light-theme .feature-title, body.light-theme .modal-title {color: var(--dark-text);}body.light-theme .footer-link, body.light-theme .event-date, body.light-theme .event-time, body.light-theme .muted-text, body.light-theme .feature-desc, body.light-theme .info-label {color: var(--light-muted-text);}.theme-switch {display: flex;align-items: center;margin-left: 20px;cursor: pointer;}.theme-icon {font-size: 1.2rem;margin-right: 8px;}header {background-color: rgba(18, 18, 18, 0.9);backdrop-filter: blur(10px);position: sticky;top: 0;z-index: 100;border-bottom: 1px solid rgba(255, 255, 255, 0.1);background-size: 200% 200%;animation: gradientShift 8s ease infinite;}.navbar {display: flex;justify-content: space-between;align-items: center;padding: 20px 0;}.logo {font-size: 3.8rem;font-weight: 650;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);}.nav-links {display: flex;gap: 30px;align-items: center;}.nav-link {font-weight: 500;position: relative;}.nav-link::after {content: '';position: absolute;bottom: -5px;left: 0;width: 0;height: 2px;background: var(--primary-gradient);transition: width 0.3s ease;}.nav-link:hover::after {width: 100%;}.auth-btns {display: flex;gap: 15px;}.login-btn {background-color: transparent;border: 1px solid var(--accent-color);color: var(--light-text);}.login-btn:hover {background-color: rgba(255, 62, 157, 0.1);transform: scale(1.05);animation: glowRotate 2s infinite;}.login-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.signup-btn {background: var(--primary-gradient);color: white;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.signup-btn:hover {opacity: 0.9;transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.signup-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.premium-btn {background: var(--secondary-gradient);color: white;margin-left: 15px;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.premium-btn:hover {opacity: 0.9;transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.premium-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.hero {min-height: 80vh;display: flex;align-items: center;position: relative;overflow: hidden;background-image: url('images/banner.jpg');background-size: 100% 100%;background-position: center;background-repeat: no-repeat;}.hero::before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.6);background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.5)), radial-gradient(circle at top right, rgba(138, 43, 226, 0.4), transparent 50%);z-index: -1;}.hero::after {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100%;background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"><circle cx="10" cy="10" r="2" fill="#ff3e9d"/></svg>') repeat;opacity: 0.05;animation: sparkle 10s infinite;}@keyframes sparkle {0% {transform: translate(0, 0);opacity: 0.05;}50% {transform: translate(5px, 5px);opacity: 0.15;}100% {transform: translate(0, 0);opacity: 0.05;}}.hero h1 {font-size: 4rem;font-weight: 800;margin-bottom: 20px;line-height: 1.2;color: #ffffff;text-shadow: 0 0 10px rgba(255, 62, 157, 0.8), 0 0 20px rgba(11, 99, 246, 0.8);letter-spacing: 2px;border-right: 3px solid var(--accent-color);animation: blink 0.75s step-end infinite;}.hero-content {max-width: 650px;position: relative;z-index: 1;}@keyframes blink {50% {border-color: transparent;}}.hero p {font-size: 1.2rem;margin-bottom: 20px;color: #ffffff;text-shadow: 0 2px 6px rgba(0, 0, 0, 0.8);position: relative;display: inline-block;}.hero-btns {display: flex;gap: 20px;}.primary-btn {background: var(--primary-gradient);color: #ffffff;font-size: 1.1rem;padding: 12px 24px;background-size: 200% 200%;animation: gradientShift 5s ease infinite, pulse 2s infinite;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);box-shadow: 0 0 10px rgba(255, 62, 157, 0.7);}.primary-btn:hover {transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite, vibrate 0.3s infinite;}.primary-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}@keyframes pulse {0% {box-shadow: 0 0 0 0 rgba(255, 62, 157, 0.7);}70% {box-shadow: 0 0 0 10px rgba(255, 62, 157, 0);}100% {box-shadow: 0 0 0 0 rgba(255, 62, 157, 0);}}.secondary-btn {background-color: rgba(255, 255, 255, 0.9);border: 1px solid var(--accent-color);color: var(--dark-text);font-size: 1.1rem;padding: 12px 24px;text-shadow: none;box-shadow: 0 0 10px rgba(255, 62, 157, 0.5);}.secondary-btn:hover {background-color: #ffffff;color: var(--accent-color);transform: scale(1.05);animation: glowRotate 2s infinite;}.secondary-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.tabs-container {margin-top: 40px;}.tabs-row {display: flex;flex-wrap: wrap;gap: 10px;margin-bottom: 15px;border-bottom: 1px solid rgba(255, 255, 255, 0.1);padding-bottom: 15px;}.tab {padding: 10px 20px;background-color: rgba(255, 255, 255, 0.1);border-radius: 6px;cursor: pointer;transition: all 0.3s ease;}.tab.active {background: var(--primary-gradient);}.tab:hover:not(.active) {background-color: rgba(255, 255, 255, 0.2);transform: scale(1.1);box-shadow: 0 0 10px var(--accent-color);}.genres-row {display: none;flex-wrap: wrap;gap: 10px;margin-bottom: 20px;padding-bottom: 15px;border-bottom: 1px solid rgba(255, 255, 255, 0.1);}.genres-row.show {display: flex;}.genre-tab {padding: 8px 16px;background-color: rgba(255, 255, 255, 0.05);border-radius: 20px;font-size: 0.9rem;cursor: pointer;transition: all 0.3s ease;}.genre-tab.active {background-color: var(--accent-color);}.genre-tab:hover:not(.active) {background-color: rgba(255, 255, 255, 0.1);transform: scale(1.1);box-shadow: 0 0 10px var(--accent-color);}.venues-row {display: flex;flex-wrap: wrap;gap: 10px;margin-bottom: 30px;}.venue-tab {padding: 8px 16px;background-color: rgba(255, 255, 255, 0.05);border-radius: 6px;font-size: 0.9rem;cursor: pointer;transition: all 0.3s ease;}.venue-tab.active {background-color: var(--secondary-accent);}.venue-tab:hover:not(.active) {background-color: rgba(255, 255, 255, 0.1);transform: scale(1.1);box-shadow: 0 0 10px var(--accent-color);}.map-container {height: 500px;width: 100%;margin: 40px 0;border-radius: 10px;overflow: hidden;display: none;}.map-container.active {display: block;}.map-placeholder {width: 100%;height: 100%;background-color: var(--card-bg);display: flex;align-items: center;justify-content: center;}.view-toggle {display: flex;gap: 15px;justify-content: center;margin-bottom: 30px;}.view-btn {padding: 10px 20px;background-color: rgba(11, 99, 246, 0.2);color: var(--secondary-accent);border-radius: 5px;font-weight: 600;display: inline-block;transition: all 0.3s ease;margin-top: 10px;cursor: pointer;}.view-btn:hover {background-color: rgba(11, 99, 246, 0.3);transform: scale(1.05);animation: glowRotate 2s infinite;}.view-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.gm-style-iw {background-color: var(--card-bg);color: var(--light-text);padding: 10px;border-radius: 5px;}.gm-style-iw h3 {color: var(--muted-text);font-size: 1.2rem;margin-bottom: 5px;}.gm-style-iw p {color: var(--muted-text);font-size: 0.9rem;margin: 2px 0;}body.light-theme .gm-style-iw {background-color: var(--light-card-bg);color: var(--dark-text);}body.light-theme .gm-style-iw h3 {color: var(--dark-text);}body.light-theme .gm-style-iw p {color: var(--light-muted-text);}.calendar-container {display: none;margin: 40px 0;}.calendar-container.active {display: block;}.calendar-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 20px;}.calendar-title {font-size: 1.5rem;font-weight: 700;}.calendar-nav {display: flex;gap: 10px;}.calendar-nav-btn {width: 40px;height: 40px;border-radius: 50%;background-color: rgba(255, 255, 255, 0.1);display: flex;align-items: center;justify-content: center;cursor: pointer;transition: all 0.3s ease;}.calendar-nav-btn:hover {background-color: rgba(255, 255, 255, 0.2);}.calendar-grid {display: grid;grid-template-columns: repeat(7, 1fr);gap: 10px;}.calendar-day-header {text-align: center;font-weight: 600;padding: 10px;}.calendar-day {min-height: 100px;background-color: var(--card-bg);border-radius: 8px;padding: 10px;position: relative;}.calendar-day.out-of-month {opacity: 0.5;}.calendar-day-number {position: absolute;top: 5px;right: 5px;width: 25px;height: 25px;border-radius: 50%;background-color: rgba(255, 255, 255, 0.1);display: flex;align-items: center;justify-content: center;font-size: 0.8rem;}.calendar-day.has-events .calendar-day-number {background-color: var(--accent-color);}.calendar-event {background-color: rgba(255, 62, 157, 0.2);padding: 5px;border-radius: 4px;font-size: 0.8rem;margin-bottom: 5px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;cursor: pointer;}.calendar-event.music {background-color: rgba(255, 62, 157, 0.2);}.calendar-event.art {background-color: rgba(11, 99, 246, 0.2);}.calendar-event.theater {background-color: rgba(76, 201, 240, 0.2);}.calendar-event.drag {background-color: rgba(138, 43, 226, 0.2);}.section-title {font-size: 2.5rem;font-weight: 700;margin-bottom: 40px;position: relative;display: inline-block;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.section-title::after {content: '';position: absolute;bottom: -10px;left: 0;width: 50%;height: 4px;background: var(--primary-gradient);border-radius: 2px;}.featured-events {padding: 80px 0;}.events-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 30px;margin-top: 40px;}.event-card {background: var(--card-bg);border-radius: 10px;padding: 20px;margin: 15px;position: relative;transition: transform 0.3s ease;display: flex;flex-direction: column;gap: 10px;overflow: hidden;}.event-card.premium {border: 2px solid var(--premium-color);box-shadow: 0 0 15px rgba(255, 0, 80, 0.5);}.event-card:hover {transform: translateY(-10px) scale(1.05) rotate(1deg);box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3), 0 0 20px var(--accent-color);}.event-img {width: 100%;height: 200px;object-fit: cover;}.event-details {padding: 20px;}.event-tags {display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 10px;}.event-category {background-color: rgba(255, 62, 157, 0.2);color: var(--accent-color);padding: 5px 10px;border-radius: 20px;font-size: 0.8rem;display: inline-block;}.event-genre {background-color: rgba(11, 99, 246, 0.2);color: var(--secondary-accent);padding: 5px 10px;border-radius: 20px;font-size: 0.8rem;display: inline-block;}.event-title {font-size: 1.4rem;font-weight: 700;margin-bottom: 10px;}.event-info {margin-bottom: 15px;}.event-date, .event-time, .event-venue, .event-price {display: flex;align-items: center;gap: 8px;margin-bottom: 8px;color: var(--muted-text);font-size: 0.95rem;}.event-venue {font-weight: 500;color: var(--light-text);}.event-price {font-weight: 500;color: var(--light-text);}.search-section {padding: 30px 0;background-color: rgba(30, 30, 30, 0.6);border-radius: 20px;margin: 20px 0;}.search-container {display: flex;flex-direction: column;gap: 1px;}.search-title {font-size: 1.5rem;font-weight: 700;text-align: center;margin-bottom: 10px;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.search-bar {display: flex;gap: 10px;max-width: 600px;margin: 0 auto;}.search-input {flex: 1;padding: 10px 15px;border-radius: 10px;border: none;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);font-size: 0.9rem;}.search-input:focus {outline: none;background-color: rgba(255, 255, 255, 0.15);}.search-btn {background: var(--primary-gradient);color: white;border-radius: 10px;padding: 0 20px;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.search-btn:hover {transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.search-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.recommendations {padding: 60px 0;}.recommendations-title {font-size: 2rem;font-weight: 700;margin-bottom: 40px;position: relative;display: inline-block;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.recommendations-title::after {content: '';position: absolute;bottom: -10px;left: 0;width: 50%;height: 4px;background: var(--primary-gradient);border-radius: 2px;}.recommendations-subtitle {margin-bottom: 10px;color: var(--muted-text);}.ad-banner {margin: 10px 0;padding: 15px;border-radius: 10px;background: var(--secondary-gradient);text-align: center;color: white;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.ad-content {display: flex;align-items: center;justify-content: space-between;gap: 20px;}.ad-image {flex: 0 0 auto;}.ad-image img {width: 100px;height: 100px;object-fit: cover;border-radius: 8px;}.ad-text {flex: 1;text-align: center;}.ad-text h3 {font-size: 1.4rem;margin-bottom: 8px;}.ad-text p {margin-bottom: 0;font-size: 0.95rem;}.ad-button {flex: 0 0 auto;}@media (max-width: 768px) {.ad-content {flex-direction: column;align-items: center;text-align: center;gap: 15px;}.ad-image {margin-bottom: 10px;}.ad-text {margin-bottom: 10px;}.ad-button {width: 100%;}.ad-button .btn {width: 100%;}}.premium-section {padding: 100px 0;background: radial-gradient(circle at top left, rgba(138, 43, 226, 0.15), transparent 50%), radial-gradient(circle at bottom right, rgba(255, 62, 157, 0.15), transparent 50%);}.premium-container {display: flex;flex-direction: column;align-items: flex;}.premium-title {font-size: 3rem;font-weight: 800;text-align: center;margin-bottom: 20px;background: linear-gradient(135deg, #ff0050, #ff0060);-webkit-background-clip: text;background-clip: text;color: transparent;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;}.premium-price {font-size: 2.5rem;font-weight: 700;text-align: center;margin-bottom: 20px;}.premium-price span {font-size: 1.2rem;color: var(--muted-text);text-align: center;}.premium-subtitle {text-align: center;max-width: 700px;margin: 0 auto 50px;font-size: 1.2rem;color: var(--muted-text);}.premium-features {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 30px;margin-bottom: 50px;}.premium-feature {background-color: var(--card-bg);border-radius: 10px;padding: 30px;text-align: center;transition: transform 0.3s ease;}.premium-feature:hover {transform: translateY(-10px);}.feature-icon {font-size: 2.5rem;margin-bottom: 20px;background: var(--secondary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.feature-title {font-size: 1.4rem;font-weight: 700;margin-bottom: 15px;}.feature-desc {color: var(--muted-text);}.premium-cta {background: linear-gradient(135deg, #ffd700, #ff9500);color: black;padding: 15px 40px;font-size: 1.1rem;border-radius: 10px;font-weight: 700;margin-top: 30px;transition: all 0.3s ease;background-size: 200% 200%;animation: gradientShift 5s ease infinite, pulse 2s infinite;}.premium-cta:hover {transform: scale(1.08);animation: glowRotate 2s infinite, gradientShift 5s ease infinite, vibrate 0.3s infinite;}.premium-cta:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.event-card .premium-badge {background: linear-gradient(135deg, #ff0044, #ff0050);color: #ffffff;padding: 8px 0;border-radius: 10px 10px 0 0;font-size: 0.9rem;font-weight: 700;position: absolute;top: 0;left: 0;width: 100%;text-align: center;z-index: 10;animation: pulse 2s infinite, gradientShift 5s ease infinite;background-size: 200% 200%;box-shadow: 0 2px 10px rgba(255, 0, 80, 0.5);}.event-card.premium {border: 2px solid var(--premium-color);box-shadow: 0 0 15px rgba(255, 0, 80, 0.5);}.weather-info {display: flex;align-items: center;gap: 10px;background-color: rgba(255, 255, 255, 0.1);padding: 10px 15px;border-radius: 8px;margin-bottom: 20px;}.weather-icon {font-size: 1.5rem;}.weather-details {display: flex;flex-direction: column;}.weather-temp {font-weight: 600;}.weather-desc {font-size: 0.9rem;color: var(--muted-text);}.rsvp-btns {display: flex;gap: 10px;margin-top: 20px;}.rsvp-btn {flex: 1;padding: 10px;text-align: center;border-radius: 6px;cursor: pointer;transition: all 0.3s ease;display: flex;align-items: center;justify-content: center;gap: 5px;}.rsvp-btn:hover {transform: scale(1.05);animation: glowRotate 2s infinite;}.rsvp-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.rsvp-going {background-color: rgba(76, 201, 240, 0.2);color: var(--success-color);}.rsvp-interested {background-color: rgba(255, 255, 255, 0.1);}.rsvp-not-going {background-color: rgba(255, 255, 255, 0.05);color: var(--muted-text);}.rsvp-btn.active {background-color: var(--accent-color);color: white;}.rsvp-count {font-size: 0.9rem;margin-top: 10px;color: var(--muted-text);}.event-comments {margin-top: 40px;}.comments-title {font-size: 1.2rem;font-weight: 600;margin-bottom: 15px;}.comment-input {display: flex;gap: 10px;margin-bottom: 20px;}.comment-textarea {flex: 1;padding: 12px;border-radius: 8px;border: none;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);font-size: 0.9rem;min-height: 80px;resize: vertical;}.comment-btn {align-self: flex-end;background: var(--primary-gradient);color: white;padding: 10px 15px;border-radius: 6px;cursor: pointer;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.comment-btn:hover {transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.comment-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.comments-list {display: flex;flex-direction: column;gap: 15px;}.comment {background-color: rgba(255, 255, 255, 0.05);padding: 15px;border-radius: 8px;}.comment-header {display: flex;justify-content: space-between;margin-bottom: 10px;}.comment-author {font-weight: 600;}.comment-time {font-size: 0.8rem;color: var(--muted-text);}.comment-text {line-height: 1.5;}.comment-actions {margin-top: 10px;display: flex;gap: 15px;}.comment-action {font-size: 0.8rem;color: var(--muted-text);cursor: pointer;}.comment-action:hover {color: var(--light-text);}.create-section {padding: 80px 0;}.create-box {background-color: var(--card-bg);border-radius: 15px;padding: 40px;max-width: 800px;margin: 0 auto;box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);}.create-title {font-size: 2rem;font-weight: 700;margin-bottom: 30px;text-align: center;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.form-group {margin-bottom: 25px;}.form-label {display: block;margin-bottom: 10px;font-weight: 500;}.form-input {width: 100%;padding: 15px;border-radius: 8px;border: none;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);font-size: 1rem;}.form-input:focus {outline: none;background-color: rgba(255, 255, 255, 0.15);}.form-select {width: 100%;padding: 15px;border-radius: 8px;border: none;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);font-size: 1rem;appearance: none;background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat: no-repeat;background-position: right 15px center;background-size: 15px;}.form-select option {color: #000000;background-color: #ffffff;}.form-select option:hover {background-color: var(--accent-color);color: #ffffff;}body.light-theme .form-select {background-color: rgba(0, 0, 0, 0.1);color: var(--dark-text);}body.light-theme .form-select option {color: #000000;background-color: #ffffff;}.form-textarea {width: 100%;padding: 15px;border-radius: 8px;border: none;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);font-size: 1rem;min-height: 150px;resize: vertical;}.facebook-input {margin-bottom: 10px;}.facebook-fetch-btn {background-color: #1877f2;color: white;padding: 10px 15px;border-radius: 6px;font-size: 0.9rem;cursor: pointer;display: inline-block;}.facebook-fetch-btn:hover {background-color: #166fe5;transform: scale(1.05);animation: glowRotate 2s infinite;}.facebook-fetch-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.upload-area {border: 2px dashed rgba(255, 255, 255, 0.3);padding: 30px;text-align: center;border-radius: 8px;cursor: pointer;transition: all 0.3s ease;}.upload-area:hover {border-color: var(--accent-color);background-color: rgba(255, 62, 157, 0.05);}.upload-icon {font-size: 2rem;margin-bottom: 15px;color: var(--muted-text);}.upload-text {margin-bottom: 10px;}.upload-hint {font-size: 0.9rem;color: var(--muted-text);}.submit-btn {background: var(--primary-gradient);color: white;padding: 15px 30px;font-size: 1.1rem;border-radius: 8px;font-weight: 600;width: 100%;margin-top: 20px;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.submit-btn:hover {opacity: 0.9;transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.submit-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.event-modal {display: none;position: fixed;top: 0;left: 0;width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.8);z-index: 1000;overflow-y: auto;padding: 50px 0;}.event-modal-content {background-color: var(--card-bg);max-width: 800px;margin: 0 auto;border-radius: 15px;padding: 40px;position: relative;animation: modalFadeIn 0.3s ease;}.event-modal-header {margin-bottom: 30px;}.event-modal-title {font-size: 2rem;font-weight: 700;margin-bottom: 15px;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.event-modal-tags {display: flex;flex-wrap: wrap;gap: 10px;margin-bottom: 20px;}.event-modal-img {width: 100%;max-height: 400px;object-fit: cover;border-radius: 10px;margin-bottom: 30px;}.event-modal-info {display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 20px;margin-bottom: 30px;}#events-container {position: relative;min-height: 100px;}#see-more-btn {display: block !important;visibility: visible !important;margin: 20px auto !important;padding: 10px 20px;background-color: #8a2be2;color: white;border: none;border-radius: 5px;cursor: pointer;}#see-more-btn:hover {background-color: #0056b3;}.info-item {display: flex;flex-direction: column;}.info-label {font-size: 0.9rem;color: var(--muted-text);margin-bottom: 5px;}.info-value {font-weight: 500;}.event-modal-desc {margin-bottom: 30px;line-height: 1.8;}.event-modal-actions {display: flex;gap: 15px;}.action-btn {flex: 1;padding: 12px;border-radius: 8px;font-weight: 600;text-align: center;}.action-btn.primary-action {background: var(--primary-gradient);color: white;background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.action-btn.primary-action:hover {transform: scale(1.05);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.action-btn.primary-action:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.action-btn.secondary-action {background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);}.action-btn.secondary-action:hover {transform: scale(1.05);animation: glowRotate 2s infinite;}.action-btn.secondary-action:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.close-modal {position: absolute;top: 20px;right: 20px;font-size: 1.5rem;color: var(--muted-text);cursor: pointer;background: none;border: none;padding: 0;}.close-modal:hover {color: var(--light-text);transform: scale(1.05);animation: glowRotate 2s infinite;}.close-modal:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.auth-modal {display: none;position: fixed;top: 0;left: 0;width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.8);z-index: 1000;overflow-y: auto;padding: 50px 0;}.modal-content {background-color: var(--card-bg);max-width: 500px;margin: 0 auto;border-radius: 15px;padding: 40px;position: relative;animation: modalFadeIn 0.3s ease;}@keyframes modalFadeIn {from {opacity: 0;transform: translateY(-20px);}to {opacity: 1;transform: translateY(0);}}.modal-title {font-size: 1.8rem;font-weight: 700;margin-bottom: 30px;text-align: center;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;}.social-login {display: flex;gap: 15px;margin-bottom: 30px;}.social-btn {flex: 1;padding: 12px;border-radius: 8px;display: flex;align-items: center;justify-content: center;gap: 10px;background-color: rgba(255, 255, 255, 0.1);color: var(--light-text);}.social-btn:hover {background-color: rgba(255, 255, 255, 0.15);transform: scale(1.05);animation: glowRotate 2s infinite;}.social-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}.divider {display: flex;align-items: center;margin: 20px 0;color: var(--muted-text);}.divider::before, .divider::after {content: '';flex: 1;height: 1px;background-color: rgba(255, 255, 255, 0.1);}.divider span {padding: 0 15px;font-size: 0.9rem;}footer {background-color: #0c0c0c;padding: 80px 0 30px;margin-top: 80px;}.footer-content {display: grid;grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));gap: 40px;margin-bottom: 60px;}.footer-logo {font-size: 1.8rem;font-weight: 800;margin-bottom: 20px;background: var(--primary-gradient);-webkit-background-clip: text;background-clip: text;color: transparent;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);}.footer-desc {color: var(--muted-text);margin-bottom: 20px;}.social-links {display: flex;gap: 15px;}.social-link {width: 40px;height: 40px;border-radius: 50%;background-color: rgba(255, 255, 255, 0.1);display: flex;align-items: center;justify-content: center;transition: all 0.3s ease;}.social-link:hover {background: var(--primary-gradient);transform: translateY(-5px);}.footer-title {font-size: 1.2rem;font-weight: 700;margin-bottom: 20px;}.footer-links {list-style: none;}.footer-link {margin-bottom: 15px;color: var(--muted-text);transition: color 0.3s ease;}.footer-link:hover {color: var(--light-text);}.footer-bottom {text-align: center;padding-top: 30px;border-top: 1px solid rgba(255, 255, 255, 0.1);color: var(--muted-text);font-size: 0.9rem;}.like-btn {background: none;border: none;color: #ff4444;cursor: pointer;margin-right: 10px;}.like-btn:hover {color: #ff6666;transform: scale(1.05);animation: glowRotate 2s infinite;}.like-btn:active {transform: translateY(3px);box-shadow: 0 0 5px var(--accent-color), 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);animation: ripple 0.2s ease;}@media (max-width: 768px) {.navbar {flex-direction: column;gap: 15px;}.nav-links {flex-direction: column;width: 100%;text-align: center;gap: 15px;}.auth-btns {width: 100%;justify-content: center;}.hero h1 {font-size: 2.5rem;}.hero-btns {flex-direction: column;}.search-bar {flex-direction: column;}.tabs-row, .genres-row, .venues-row {overflow-x: auto;padding-bottom: 10px;flex-wrap: nowrap;}.tab, .genre-tab, .venue-tab {white-space: nowrap;}.premium-feature {padding: 20px;}.create-box {padding: 20px;}.modal-content, .event-modal-content {width: 90%;padding: 30px 20px;}.event-modal-info {grid-template-columns: 1fr;}.event-modal-actions {flex-direction: column;}.calendar-grid {grid-template-columns: repeat(auto-fit, minmax(40px, 1fr));}.calendar-day {min-height: 80px;}.view-toggle {flex-direction: column;align-items: center;}.view-btn {width: 100%;text-align: center;}.rsvp-btns {flex-direction: column;}}.fc-event {cursor: pointer;position: relative;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}.fc-event:hover {z-index: 10;}.fc-event .fc-event-main::after {content: attr(data-full-title);visibility: hidden;background: var(--card-bg);color: var(--light-text);padding: 8px 12px;border-radius: 6px;position: absolute;top: -40px;left: 50%;transform: translateX(-50%);white-space: nowrap;box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);z-index: 20;font-size: 0.9rem;}.fc-event:hover .fc-event-main::after {visibility: visible;}.fc-daygrid-event {max-width: 100%;}.modal-message {font-size: 1rem;color: var(--light-text);margin-bottom: 20px;text-align: center;line-height: 1.5;}body.light-theme .modal-message {color: var(--dark-text);}#error-modal .modal-content {max-width: 400px;padding: 30px;}.modal-actions {display: flex;justify-content: center;gap: 10px;}.modal {display: none;position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0, 0, 0, 0.6);z-index: 1000;justify-content: center;align-items: center;transition: opacity 0.3s ease-in-out;}.modal[style*="display: flex"] .modal-content {transform: scale(1);}.modal-title {font-size: 1.5rem;font-weight: 600;color: #ffffff;margin-bottom: 10px;}.modal-message {font-size: 1rem;color: #ffffff;line-height: 1.5;margin-bottom: 20px;max-height: 150px;overflow-y: auto;word-wrap: break-word;}.modal-actions {display: flex;justify-content: center;gap: 10px;}.action-btn {padding: 10px 20px;border: none;border-radius: 4px;font-size: 1rem;cursor: pointer;transition: background 0.2s;}.action-btn.primary-action {background: #007bff;color: #ffffff;}.action-btn.primary-action:hover {background: #0056b3;}.action-btn.secondary-action {background: #f5f5f5;color: #333333;}.action-btn.secondary-action:hover {background: #e0e0e0;}.event-modal .modal-content, .auth-modal .modal-content {max-width: 600px;padding: 30px;}.event-modal .modal-title, .auth-modal .modal-title {font-size: 1.8rem;}@media (max-width: 600px) {.modal-content {width: 95%;padding: 15px;}.event-modal .modal-content, .auth-modal .modal-content {max-width: 95%;}.modal-title {font-size: 1.3rem;}.event-modal .modal-title, .auth-modal .modal-title {font-size: 1.5rem;}}.modal-message.error {color: #ff4444;}.modal-message.info {color: var(--secondary-accent);}.modal-message.success {color: var(--success-color);}.raffle-winner-circle {position: fixed;bottom: 40px;right: 40px;z-index: 99;width: 180px;height: 180px;background: var(--secondary-gradient);border-radius: 50%;box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3), 0 0 20px var(--accent-color);display: flex;align-items: center;justify-content: center;text-align: center;animation: floatPulse 3s infinite ease-in-out;border: 3px solid rgba(255, 255, 255, 0.2);overflow: hidden;}.raffle-winner-circle::before {content: '';position: absolute;top: -50%;left: -50%;width: 200%;height: 200%;background: linear-gradient( 45deg, transparent 45%, rgba(255, 255, 255, 0.2) 48%, rgba(255, 255, 255, 0.2) 52%, transparent 55% );animation: sparkleRotate 4s linear infinite;}.raffle-circle-content {padding: 15px;position: relative;z-index: 2;}.raffle-circle-title {font-size: 1.1rem;font-weight: bold;color: #ffffff;margin: 5px 0;text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);}.raffle-circle-winner {font-size: 0.9rem;color: #ffffff;margin: 5px 0;line-height: 1.4;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}.raffle-circle-btn {display: inline-block;padding: 8px 15px;font-size: 0.9rem;font-weight: bold;color: #fff;background: var(--primary-gradient);border: none;border-radius: 25px;cursor: pointer;transition: all 0.3s;box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);background-size: 200% 200%;animation: gradientShift 5s ease infinite;}.raffle-circle-btn:hover {transform: translateY(-2px);box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);animation: glowRotate 2s infinite, gradientShift 5s ease infinite;}.raffle-details {text-align: center;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}.raffle-title {text-align: center;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}.raffle-subtitle {text-align: center;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}.raffle-note {text-align: center;text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);}.premium-badge {font-size: 3rem;font-weight: 800;text-align: center;margin-bottom: 20px;background: linear-gradient(135deg, #ff0050, #ff0060);-webkit-background-clip: text;background-clip: text;color: transparent;text-shadow: 0 0 10px var(--accent-color), 0 0 20px var(--secondary-accent);letter-spacing: 2px;text-align: center;}@keyframes floatPulse {0% {transform: translateY(0) scale(1);box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3), 0 0 20px var(--accent-color);}50% {transform: translateY(-10px) scale(1.02);box-shadow: 0 15px 35px rgba(0, 0, 0, 0.4), 0 0 30px var(--accent-color);}100% {transform: translateY(0) scale(1);box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3), 0 0 20px var(--accent-color);}}@keyframes sparkleRotate {0% {transform: rotate(0deg);}100% {transform: rotate(360deg);}}@media (max-width: 768px) {.raffle-winner-circle {width: 140px;height: 140px;bottom: 20px;right: 20px;}.raffle-circle-title {font-size: 1rem;}.raffle-circle-winner {font-size: 0.8rem;}.raffle-circle-btn {padding: 6px 12px;font-size: 0.8rem;}}@media (max-width: 480px) {.raffle-winner-circle {display: none;}}.signup-suggestion {background-color: #f8f9fa;border-left: 4px solid #4a90e2;border-radius: 4px;padding: 15px;margin-top: 20px;text-align: center;box-shadow: 0 2px 4px rgba(0,0,0,0.05);transition: all 0.3s ease;}.signup-suggestion p {margin-bottom: 12px;color: #333;}.switch-to-signup-btn {background-color: #4a90e2;color: white;border: none;padding: 8px 16px;border-radius: 4px;cursor: pointer;font-weight: 600;transition: background-color 0.2s;}.switch-to-signup-btn:hover {background-color: #3a7fd5;}.auth-switch-link {margin-top: 20px;text-align: center;font-size: 0.9em;padding: 10px;border-top: 1px solid #eee;}.auth-switch-link a {color: #4a90e2;text-decoration: none;font-weight: 600;}.auth-switch-link a:hover {text-decoration: underline;}#login-error, #signup-error {background-color: #fde8e8;color: #e53e3e;padding: 10px;border-radius: 4px;margin-bottom: 15px;font-size: 0.9em;border-left: 4px solid #e53e3e;}.success-message {background-color: #e6f7ef;color: #0c9b6a;padding: 10px;border-radius: 4px;margin-bottom: 15px;font-size: 0.9em;border-left: 4px solid #0c9b6a;}.auth-form input {width: 100%;padding: 12px;margin-bottom: 15px;border: 1px solid #ddd;border-radius: 4px;transition: border-color 0.3s;}.auth-form input:focus {border-color: #4a90e2;outline: none;}.auth-form button[type="submit"] {width: 100%;padding: 12px;background-color: #4a90e2;color: white;border: none;border-radius: 4px;cursor: pointer;font-weight: 600;transition: background-color 0.2s;}.auth-form button[type="submit"]:hover {background-color: #3a7fd5;}.form-group {margin-bottom: 20px;}.form-group label {display: block;margin-bottom: 5px;font-weight: 500;}.saved-events {padding: 60px 0;background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);}.saved-events-title {font-size: 2.5rem;text-align: center;margin-bottom: 10px;background: linear-gradient(45deg, #ff3e9d, #6d4aff);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.saved-events-subtitle {text-align: center;color: #888;margin-bottom: 40px;font-size: 1.1rem;}