.vt{--vt-primary: #0d6efd;--vt-primary-soft: #c5d6f5;--vt-ink: #2d2d2d;--vt-muted: #6c757d;--vt-faint: #adb5bd;--vt-border: #e9ecef;--vt-border-strong: #dee2e6;--vt-panel: #fff;--vt-bg-soft: #f6f7f9;--vt-new: #dc3545;--vt-new-soft: #fbe3e6;--vt-ongoing: #fd7e14;--vt-ongoing-soft: #ffe8d3;--vt-radius: 12px;margin:0 auto;padding:8px 0 40px;color:var(--vt-ink)}.vt *{box-sizing:border-box}.vt__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:20px 0 18px}.vt__title{font-size:28px;font-weight:bolder;color:var(--vt-ink);margin:0}.vt__subtitle{margin:8px 0 0;color:var(--vt-muted);font-size:1rem;max-width:660px;line-height:1.5}.vt__live{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--vt-bg-soft);border:1px solid var(--vt-border);color:var(--vt-muted);font-size:.78rem;font-weight:600;white-space:nowrap}.vt__live-dot{width:8px;height:8px;border-radius:50%;background:#28a745;box-shadow:0 0 #28a74580;animation:vt-pulse 2s infinite}.vt__live.is-stale .vt__live-dot{background:var(--vt-faint);animation:none}@keyframes vt-pulse{0%{box-shadow:0 0 #28a74580}70%{box-shadow:0 0 0 8px #28a74500}to{box-shadow:0 0 #28a74500}}.vt__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:14px}.vt-stat{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:var(--vt-radius);border:1px solid var(--vt-border);background:var(--vt-panel);border-left-width:4px}.vt-stat--active{border-left-color:var(--vt-primary)}.vt-stat--new{border-left-color:var(--vt-new)}.vt-stat--week{border-left-color:var(--vt-ongoing)}.vt-stat__value{font-size:1.7rem;font-weight:700;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--vt-ink)}.vt-stat__value--text{font-size:1.05rem;line-height:1.3;padding-top:5px}.vt-stat__label{font-size:.78rem;color:var(--vt-muted);font-weight:600}.vt__toolbar{display:grid;grid-template-columns:1fr minmax(220px,300px);gap:14px;padding:12px 14px;background:var(--vt-panel);border:1px solid var(--vt-border);border-radius:var(--vt-radius);margin-bottom:12px;align-items:end}.vt__field{display:flex;flex-direction:column;gap:7px}.vt__label{font-size:.8rem;color:var(--vt-muted);font-weight:600}.vt__chips{display:flex;flex-wrap:wrap;gap:8px}.vt-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--vt-border-strong);background:#fff;color:var(--vt-muted);padding:7px 13px;border-radius:999px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.vt-chip:hover{border-color:var(--vt-primary-soft);color:var(--vt-ink)}.vt-chip.is-active{background:var(--vt-primary);border-color:var(--vt-primary);color:#fff}.vt-chip--new.is-active{background:var(--vt-new);border-color:var(--vt-new)}.vt-chip--ongoing.is-active{background:var(--vt-ongoing);border-color:var(--vt-ongoing)}.vt-chip__dot{width:8px;height:8px;border-radius:50%;background:currentColor}.vt-chip--new .vt-chip__dot{background:var(--vt-new)}.vt-chip--ongoing .vt-chip__dot{background:var(--vt-ongoing)}.vt-chip.is-active .vt-chip__dot{background:#fff}.vt-chip__n{opacity:.8;font-variant-numeric:tabular-nums}.vt-chip__n:empty{display:none}.vt__select{width:100%;padding:9px 12px;border-radius:10px;border:1px solid #ced4da;background:#fff;color:var(--vt-ink);font-size:.92rem;outline:none;transition:border-color .15s,box-shadow .15s}.vt__select:focus{border-color:#86b7fe;box-shadow:0 0 0 .2rem #0d6efd33}.vt__select:disabled{color:var(--vt-faint);background:var(--vt-bg-soft)}.vt__note{padding:12px 16px;margin-bottom:12px;border-radius:10px;background:#fff8e1;border:1px solid #ffe69c;color:#6b5300;font-size:.9rem;line-height:1.5}.vt__note--error{background:#fde8ea;border-color:#f5c2c7;color:#842029}.vt__layout{display:grid;grid-template-columns:1fr 400px;gap:16px;align-items:stretch}.vt__map-wrap{position:relative;border-radius:var(--vt-radius);overflow:hidden;border:1px solid var(--vt-border-strong);min-height:560px}.vt__map{position:absolute;top:0;right:0;bottom:0;left:0;background:#eef2f6}.vt__legend{position:absolute;left:12px;bottom:12px;z-index:500;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding:8px 12px;background:#fffffff0;border:1px solid var(--vt-border);border-radius:10px;box-shadow:0 1px 6px #00000014;font-size:.78rem;color:var(--vt-muted)}.vt__legend-item{display:inline-flex;align-items:center;gap:6px}.vt__legend-swatch{width:11px;height:11px;border-radius:50%}.vt__legend-swatch--new{background:var(--vt-new)}.vt__legend-swatch--ongoing{background:var(--vt-ongoing)}.vt-marker-wrap{background:transparent;border:none}.vt-marker{position:relative;display:block;width:16px;height:16px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 4px #00000059;box-sizing:border-box}.vt-marker--ongoing{background:var(--vt-ongoing)}.vt-marker--new{background:var(--vt-new)}.vt-marker--new:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;border:2px solid var(--vt-new);animation:vt-ring 1.8s ease-out infinite}.vt-marker.is-active{transform:scale(1.3);z-index:1}@keyframes vt-ring{0%{transform:scale(1);opacity:.9}to{transform:scale(2.6);opacity:0}}@media (prefers-reduced-motion: reduce){.vt-marker--new:before,.vt__live-dot{animation:none}}.leaflet-popup-content-wrapper{border-radius:10px}.leaflet-popup-content{margin:12px 16px}.vt-pop{min-width:200px;max-width:260px}.vt-pop__name{font-weight:600;color:var(--vt-ink);margin-bottom:2px;font-size:.95rem}.vt-pop__country{font-size:.8rem;color:var(--vt-muted);margin-bottom:6px}.vt-pop__text{font-size:.8rem;color:#495057;line-height:1.45;margin:6px 0 8px}.vt-pop__more{font-size:.8rem;color:var(--vt-primary);text-decoration:none;font-weight:600;cursor:pointer}.vt-pop__more:hover{text-decoration:underline}.vt__sidebar{display:flex;flex-direction:column;background:var(--vt-panel);border:1px solid var(--vt-border);border-radius:var(--vt-radius);overflow:hidden;max-height:620px}.vt__sidebar-head{display:flex;flex-direction:column;gap:3px;padding:10px 14px;border-bottom:1px solid var(--vt-border);background:var(--vt-bg-soft)}.vt__count{font-size:.82rem;font-weight:600;color:var(--vt-muted)}.vt__lang-note{font-size:.72rem;color:var(--vt-faint);line-height:1.3}.vt__cards{overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:9px}.vt__cards::-webkit-scrollbar{width:8px}.vt__cards::-webkit-scrollbar-thumb{background:#ced4da;border-radius:8px}.vt-card{padding:12px 14px;border-radius:10px;border:1px solid var(--vt-border);border-left-width:4px;background:#fff;transition:border-color .15s,box-shadow .15s;scroll-margin-top:12px}.vt-card--new{border-left-color:var(--vt-new)}.vt-card--ongoing{border-left-color:var(--vt-ongoing)}.vt-card.is-active{border-color:var(--vt-primary);box-shadow:0 0 0 2px #0d6efd26}.vt-card.is-flash{animation:vt-flash 1.2s ease}@keyframes vt-flash{0%{background:#e7f1ff}to{background:#fff}}.vt-card__head{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.vt-card__name{font-weight:600;font-size:.95rem;color:var(--vt-ink);margin:0}.vt-card__country{font-size:.78rem;color:var(--vt-muted);margin-top:1px}.vt-card__badge{margin-left:auto;flex:none;padding:3px 9px;border-radius:999px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.vt-card__badge--new{background:var(--vt-new-soft);color:#a71d2a}.vt-card__badge--ongoing{background:var(--vt-ongoing-soft);color:#9a4a00}.vt-card__summary{margin:8px 0 0;font-size:.83rem;color:#495057;line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.vt-card.is-open .vt-card__summary{display:block;-webkit-line-clamp:unset}.vt-card__foot{display:flex;align-items:center;gap:12px;margin-top:8px;flex-wrap:wrap}.vt-card__btn{border:none;background:none;padding:0;font-size:.78rem;font-weight:600;color:var(--vt-primary);cursor:pointer}.vt-card__btn:hover{text-decoration:underline}.vt-card__btn:disabled{color:var(--vt-faint);cursor:default;text-decoration:none}.vt-card__link{font-size:.78rem;color:var(--vt-muted);text-decoration:none;margin-left:auto}.vt-card__link:hover{color:var(--vt-primary);text-decoration:underline}.vt__empty{padding:40px 20px;text-align:center;color:var(--vt-muted)}.vt__attribution{margin:14px 0 0;font-size:.8rem;color:var(--vt-muted);line-height:1.5}.vt__attribution a{color:var(--vt-primary)}.vt__intro{margin-top:24px;padding:20px 22px;background:var(--vt-bg-soft);border:1px solid var(--vt-border);border-radius:var(--vt-radius)}.vt__intro h2{margin:0 0 10px;font-size:20px;color:var(--vt-ink)}.vt__intro p{margin:0 0 10px;color:var(--vt-muted);line-height:1.6;font-size:.92rem}.vt__intro p:last-child{margin-bottom:0}@media (max-width: 900px){.vt__hero{flex-direction:column}.vt__stats{grid-template-columns:1fr 1fr}.vt-stat--week{grid-column:1 / -1}.vt__toolbar,.vt__layout{grid-template-columns:1fr}.vt__map-wrap{min-height:400px}.vt__sidebar{max-height:none}.vt__cards{max-height:560px}}@media (max-width: 480px){.vt__title{font-size:24px}.vt__stats{grid-template-columns:1fr}.vt-stat__value{font-size:1.4rem}}
