*{box-sizing:border-box;margin:0;padding:0}body,html,#root{width:100%;height:100%;overflow:hidden;font-family:Roboto,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#96969640;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#96969673}@keyframes modalPopIn{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes beaconPulse{0%{transform:scale(1);box-shadow:0 0 #4caf50b3}70%{transform:scale(1.15);box-shadow:0 0 0 8px #4caf5000}to{transform:scale(1);box-shadow:0 0 #4caf5000}}@keyframes scanRingPulse{0%{transform:scale(.85);opacity:.9}50%{transform:scale(1.1);opacity:.4}to{transform:scale(.85);opacity:.9}}.m3-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;border:none;outline:none;font-family:inherit;font-weight:500;text-decoration:none;-webkit-user-select:none;user-select:none;transition:transform .15s cubic-bezier(.2,0,0,1),box-shadow .2s cubic-bezier(.2,0,0,1),background-color .2s ease,border-color .2s ease}.m3-btn:hover{transform:translateY(-1px);filter:brightness(1.08)}.m3-btn:active{transform:scale(.96) translateY(0);filter:brightness(.96)}.m3-icon-btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none;outline:none;transition:transform .15s cubic-bezier(.2,0,0,1),background-color .18s ease,box-shadow .2s ease}.m3-icon-btn:hover{transform:scale(1.06)}.m3-icon-btn:active{transform:scale(.92)}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:6px;background:#9696964d;border-radius:9999px;outline:none;transition:background .2s ease}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#d0bcff;cursor:pointer;box-shadow:0 1px 3px #0000004d;transition:transform .15s cubic-bezier(.34,1.56,.64,1),box-shadow .15s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.25);box-shadow:0 0 0 6px #d0bcff40}input[type=range]::-webkit-slider-thumb:active{transform:scale(1.35);box-shadow:0 0 0 10px #d0bcff59}.m3-modal-backdrop{animation:fadeIn .2s ease-out forwards}.m3-modal-content{animation:modalPopIn .25s cubic-bezier(.16,1,.3,1) forwards}
