*{box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}select,input[type=text]{min-height:44px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.sidebar-scroll::-webkit-scrollbar-thumb{background:#ffffff26}.score-bar-animated{animation:growWidth 1s ease-out forwards}@keyframes growWidth{0%{width:0%}}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-dot{animation:loaderBounce 1.4s ease-in-out infinite both}.loader-dot:nth-child(1){animation-delay:-.32s}.loader-dot:nth-child(2){animation-delay:-.16s}.loader-dot:nth-child(3){animation-delay:0s}@keyframes loaderBounce{0%,80%,to{transform:scale(0);opacity:.4}40%{transform:scale(1);opacity:1}}.text-gradient{background:linear-gradient(135deg,#16a34a,#22c55e,#4ade80);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1;height:32px}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:#e2e8e5;outline:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#16a34a);cursor:pointer;box-shadow:0 2px 8px #22c55e59;border:3px solid white;transition:transform .15s}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}input[type=range]::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#16a34a);cursor:pointer;box-shadow:0 2px 8px #22c55e59;border:3px solid white}.filter-active{box-shadow:0 0 0 3px #22c55e33}.timeline-line{position:absolute;left:15px;top:36px;bottom:0;width:2px;background:linear-gradient(to bottom,#22c55e,#e2e8e5)}.location-map{min-height:260px}.location-map .gm-style iframe+div{border-radius:1rem}.map-pin-marker{position:relative;width:20px;height:20px}.map-pin-marker span{display:block;width:20px;height:20px;border-radius:999px 999px 999px 0;background:linear-gradient(135deg,#22c55e,#15803d);border:2px solid #ffffff;box-shadow:0 8px 18px #15803d47;transform:rotate(-45deg)}
