*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fff;--surface:#f7f7f7;--surface-2:#ececec;--border:#ddd;--text:#000;--text-dim:#666;--accent:#e00000;--mega:#c04040;--major:#b8860b;--notable:#3a7a30;--font:"PT Sans",-apple-system,sans-serif;--mono:"PT Mono",monospace}html.dark{--bg:#0e0e0e;--surface:#161616;--surface-2:#222;--border:#333;--text:#f2f2f0;--text-dim:#9a9a9a;--accent:#ff2b2b;--mega:#ff6b6b;--major:#e8b84b;--notable:#7fb07f}html{overscroll-behavior:none;height:100%;overflow:hidden}body{font-family:var(--font);background:var(--bg);color:var(--text);overscroll-behavior:none;height:100dvh;position:relative;overflow:hidden}header{border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);z-index:1000;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;padding:12px 20px;display:grid;position:fixed;top:0;left:0;right:0}.header-right{position:absolute;top:50%;right:20px;transform:translateY(-50%)}.logo{color:inherit;align-items:baseline;gap:8px;text-decoration:none;display:flex}.logo h1{letter-spacing:.01em;text-transform:uppercase;font-size:22.5px;font-weight:700}.logo span{font-family:var(--font);color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:14px}nav{justify-content:center;align-items:center;gap:20px;display:flex}nav a{font-family:var(--font);color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em;font-size:15.5px;text-decoration:none;transition:color .15s}nav a:hover{color:var(--text)}.github-link{display:none}.github-link svg{flex-shrink:0;width:19px;height:19px;display:block}.header-right{justify-content:flex-end;align-items:center;gap:12px;display:flex}.theme-toggle{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:17.5px;transition:all .15s;display:flex}.theme-toggle:hover{border-color:var(--text-dim);color:var(--text)}.nav-toggle{border:1px solid var(--border);width:30px;height:30px;color:var(--text);font-family:var(--font);cursor:pointer;background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:19px;line-height:1;display:none}.main{display:flex;position:fixed;inset:0;overflow:hidden}.sidebar{border-right:1px solid var(--border);background:var(--bg);flex-direction:column;flex-shrink:0;width:320px;padding-top:54px;display:flex;overflow:hidden}.filters{border-bottom:1px solid var(--border);padding:12px}.filters-header{letter-spacing:-.01em;color:var(--text);margin-bottom:10px;font-size:16px;font-weight:700}.filter-group{margin-bottom:10px}.filter-group:last-child{margin-bottom:0}.filter-group h3{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);margin-bottom:7px;font-size:14px;font-weight:700}.filter-tags{flex-wrap:wrap;gap:5px;display:flex}.filter-tag{font-family:var(--font);border:1px solid var(--border);color:var(--text-dim);cursor:pointer;user-select:none;background:0 0;border-radius:3px;align-items:center;gap:5px;padding:4px 9px;font-size:14px;transition:all .15s;display:inline-flex}.filter-tag:hover{border-color:var(--text-dim);color:var(--text)}.filter-tag.active{background:var(--accent);border-color:var(--accent);color:var(--bg)}.filter-tag .dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.search-wrap{margin-bottom:10px;position:relative}.search-input{background:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font);border-radius:4px;outline:none;padding:7px 30px 7px 9px;font-size:16px}.search-input::placeholder{color:var(--text-dim)}.search-input:focus{border-color:var(--accent)}.event-list{flex:1;padding:6px;overflow-y:auto}.event-list::-webkit-scrollbar{width:4px}.event-list::-webkit-scrollbar-track{background:0 0}.event-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.event-card{cursor:pointer;border:1px solid #0000;border-radius:5px;margin-bottom:3px;padding:10px;transition:background-color .15s,border-color .15s}.event-card:hover{background:var(--surface);border-color:var(--border)}.event-card.selected{background:var(--surface);border-color:var(--accent)}.event-card .name{align-items:center;gap:6px;margin-bottom:3px;font-size:17.5px;font-weight:700;display:flex}.event-card .name .dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.event-card .meta{font-family:var(--font);color:var(--text-dim);margin-bottom:5px;font-size:14px}.event-card .tags{flex-wrap:wrap;gap:3px;display:flex}.event-card .card-links{margin-top:5px;font-size:13.5px}.event-card .card-links a{z-index:1;color:var(--accent);position:relative}.mini-tag{font-family:var(--mono);background:var(--surface-2);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-radius:2px;padding:2px 6px;font-size:12.5px}.mini-tag.mega{color:var(--mega)}.mini-tag.major{color:var(--major)}.mini-tag.notable{color:var(--notable)}.empty-state{color:var(--text-dim);text-align:center;padding:24px 14px;font-size:16px}.sidebar-footer{border-top:1px solid var(--border);background:var(--bg);flex-shrink:0;align-items:center;padding:10px 14px;display:flex}.sidebar-footer a{color:var(--text-dim);align-items:center;text-decoration:none;transition:color .15s;display:inline-flex}.sidebar-footer a:hover{color:var(--text)}.sidebar-footer svg{width:20px;height:20px;display:block}.map-container{flex:1;position:relative}#map{width:100%;height:100%}.leaflet-container{background:var(--surface)}.leaflet-top{margin-top:66px}.leaflet-control-zoom{border:1px solid var(--border)!important}.leaflet-control-zoom a{background:var(--surface)!important;color:var(--text)!important;border-color:var(--border)!important}.leaflet-control-zoom a:hover{background:var(--surface-2)!important}.leaflet-control-attribution{color:var(--text-dim)!important;background:#fffc!important;font-size:11px!important}html.dark .leaflet-control-attribution{background:#0e0e0ecc!important}.leaflet-control-attribution a{color:var(--text-dim)!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:var(--surface);color:var(--text)}.leaflet-popup-content{font-family:var(--font);font-size:16px}.leaflet-popup-content a{color:var(--accent)}.popup-links{margin-top:6px;font-size:14px}.list-link{z-index:800;background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:8px 14px;font-size:16px;text-decoration:none;position:absolute;bottom:16px;right:16px;box-shadow:0 4px 16px #0000001f}@media (width<=900px){header{padding:10px 16px}nav{background:var(--bg);border-bottom:1px solid var(--border);z-index:1001;flex-direction:column;align-items:flex-start;gap:0;display:none;position:absolute;top:100%;left:0;right:0}nav.open{display:flex}nav a{border-top:1px solid var(--border);width:100%;padding:14px 20px}nav a:first-child{border-top:none}.github-link{align-items:center;gap:8px;display:inline-flex}.github-text{display:inline}.sidebar{display:none}.leaflet-control-zoom{display:none!important}.nav-toggle{display:inline-block}}
