:root{--background:#ffffff;--foreground:#171717}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}body,html{max-width:100vw;overflow-x:hidden}body{color:var(--foreground);background:var(--background);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;padding:0;margin:0}.control-btn{padding:8px 14px;background:rgba(0,0,0,.9);border-radius:6px;font-size:13px;font-weight:500;gap:8px}.control-btn,.control-btn-mobile{color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;cursor:pointer;display:flex;align-items:center;-moz-user-select:none;user-select:none;-webkit-user-select:none}.control-btn-mobile{padding:10px 12px;background:rgba(0,0,0,.85);border-radius:8px;font-size:16px;justify-content:center;min-width:44px;min-height:44px}.mobile-stats-bar{position:absolute;bottom:0;left:0;right:0;z-index:10000;background:rgba(0,0,0,.9);color:white;padding:12px 16px;display:flex;justify-content:space-around;align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}a{color:inherit;text-decoration:none}@media (prefers-color-scheme:dark){html{color-scheme:dark}}.pulse-marker{border-radius:50%;animation:pulseFade 5s ease-out forwards;box-shadow:0 0 20px currentColor}.pulse-init{box-shadow:0 0 20px rgba(34,197,94,.6)}.pulse-update{box-shadow:0 0 20px rgba(59,130,246,.6)}.pulse-term{box-shadow:0 0 20px rgba(239,68,68,.6)}@keyframes pulseFade{0%{transform:scale(.3);opacity:0}10%{transform:scale(1);opacity:1}30%{transform:scale(1.2);opacity:.9}50%{transform:scale(1);opacity:.7}to{transform:scale(.8);opacity:0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes fadeOut{0%{opacity:1;visibility:visible}to{opacity:0;visibility:hidden;pointer-events:none}}.esim-popup .leaflet-popup-content-wrapper{background:rgba(255,255,255,.98);border-radius:10px;box-shadow:0 4px 20px rgba(0,0,0,.25)}.esim-popup .leaflet-popup-content{margin:12px 14px}.esim-popup .leaflet-popup-tip{background:rgba(255,255,255,.98)}.leaflet-container a.leaflet-popup-close-button{color:#666;font-size:20px;padding:8px}.leaflet-container a.leaflet-popup-close-button:hover{color:#333}@keyframes loadingFill{0%{width:0}to{width:100%}}