html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*{box-sizing:border-box}body{min-height:100vh;margin:0;overflow:hidden;background:#0a0a0a}.annotations{z-index:2}[data-debugging=true] :is(.annotation:not([data-debug=true]),.source:not([data-debug=true])){display:none}.annotation{contain:inline-size}.annotation div{position:absolute;font-size:3rem;color:var(--surface-1);font-weight:700;display:grid;place-items:center;overflow:hidden;background:var(--cable-color);contain:inline-size}.annotation div:after{content:"";position:absolute;width:200cqmax;aspect-ratio:1;background:conic-gradient(var(--color-one, var(--default-charge-one)),var(--color-two, var(--default-charge-two)),transparent var(--color-stop, 120deg));translate:-50% -50%;animation:charge var(--speed, 6s) var(--delay, 0s) infinite ease-in-out}.annotation div:nth-of-type(1){left:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));right:calc(anchor(var(--anchor-one) center) + ((anchor(--charger right) - anchor(--charger left)) * var(--offset-one-x, 0)));top:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));bottom:calc(anchor(var(--anchor-one) center) + ((anchor(--charger bottom) - anchor(--charger top)) * var(--offset-one-y, 0)) - (var(--cable-width) * .5));-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white 0 var(--cable-width),transparent var(--cable-width)),linear-gradient(transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white 0 var(--cable-width),transparent var(--cable-width)),linear-gradient(transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)))}.annotation[data-debug=true]{--debug: 1;--speed: 3s !important;overflow:visible}.annotation div:nth-of-type(1):after{top:0%;left:100%}.annotation--inverted div:nth-of-type(1){-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(white var(--cable-width),transparent var(--cable-width));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(white var(--cable-width),transparent var(--cable-width))}.annotation--inverted div:nth-of-type(1):after{left:0;top:100%;transform:rotate(180deg);animation-direction:reverse}.annotation div:nth-of-type(2){left:calc(anchor(var(--anchor-one) center) + ((anchor(--charger right) - anchor(--charger left)) * var(--offset-two-x, 0)) - (var(--cable-width) * .5));right:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));top:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));bottom:calc(anchor(var(--anchor-one) center) + ((anchor(--charger bottom) - anchor(--charger top)) * var(--offset-two-y, 0)));-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white 0 var(--cable-width),transparent var(--cable-width)),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white 0 var(--cable-width),transparent var(--cable-width)),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width))}.annotation div:nth-of-type(2):after{top:100%;left:100%}.annotation--inverted div:nth-of-type(2){-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)))}.annotation--inverted div:nth-of-type(2):after{left:0;top:0%;transform:rotate(180deg);animation-direction:reverse}.annotation div:nth-of-type(3){left:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));right:calc(anchor(var(--anchor-one) center) + ((anchor(--charger right) - anchor(--charger left)) * var(--offset-three-x, 0)) - (var(--cable-width) * .5));top:calc(anchor(var(--anchor-one) center) + ((anchor(--charger bottom) - anchor(--charger top)) * var(--offset-three-y, 0)));bottom:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)))}.annotation div:nth-of-type(3):after{top:0%;left:0%}.annotation--inverted div:nth-of-type(3){-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white var(--cable-width),transparent var(--cable-width)),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white var(--cable-width),transparent var(--cable-width)),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width))}.annotation--inverted div:nth-of-type(3):after{left:100%;top:100%;transform:rotate(180deg);animation-direction:reverse}.annotation div:nth-of-type(4){left:calc(anchor(var(--anchor-one) center) + ((anchor(--charger right) - anchor(--charger left)) * var(--offset-four-x, 0)));right:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));top:calc(anchor(var(--anchor-one) center) + ((anchor(--charger bottom) - anchor(--charger top)) * var(--offset-four-y, 0)) - (var(--cable-width) * .5));bottom:calc(anchor(var(--anchor-two) center) - (var(--cable-width) * .5));-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,transparent 0 calc(100% - var(--cable-width)),white calc(100% - var(--cable-width))),linear-gradient(white 0 var(--cable-width),transparent var(--cable-width))}.annotation div:nth-of-type(4):after{top:100%;left:0%;transform:rotate(180deg)}.annotation--inverted div:nth-of-type(4){-webkit-mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white var(--cable-width),transparent var(--cable-width)),linear-gradient(transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)));mask:linear-gradient(hsl(0 0% 100% / calc(var(--debug, 0) * .25)),hsl(0 0% 100% / calc(var(--debug, 0) * .25))),linear-gradient(90deg,white var(--cable-width),transparent var(--cable-width)),linear-gradient(transparent calc(100% - var(--cable-width)),white calc(100% - var(--cable-width)))}.annotation--inverted div:nth-of-type(4):after{left:100%;top:0%;transform:rotate(0);animation-direction:reverse}:root{--cable-width: .35rem;--cable-color: hsl(0 0% 25%);--default-charge-one: hsl(210 80% 80%);--default-charge-two: hsl(320 80% 80%);--color-stop: 36deg}.source{position:absolute;top:var(--y, 0);left:var(--x, 0);height:48px;width:48px;display:grid;place-items:center;font-family:sans-serif;font-weight:700;color:#fff;border-radius:50%;transition:background .2s}.source:hover{background:#00000080}.source:after{content:"";position:absolute;top:50%;left:50%;translate:-50% -50%;width:50%;aspect-ratio:1;background:var(--bg, hsl(0 0% 10%));border-radius:50%;border:4px solid hsl(0 0% 70%)}.charger{background:#292929;anchor-name:--charger;padding:1rem 4rem;border-radius:1rem;box-shadow:0 .05em #ffffffd9 inset,0 .05em #00000040;font-weight:700;display:grid;place-items:center;font-size:clamp(2rem,3vw + 1rem,8rem);position:relative}.charger__text{background:radial-gradient(circle at 100% 150%,#999 40%,#fff);color:transparent;-webkit-background-clip:text;background-clip:text;font-family:sans-serif,system-ui}.charger:before{content:"";position:absolute;inset:-.5rem;background:#999;border-radius:.5rem;z-index:-1;box-shadow:0 .05em #ffffffbf inset,0 .05em #000}.container{position:relative;height:100vh;width:100vw;z-index:12;display:grid;place-items:center}.circuit{position:absolute;inset:0;fill:#1a1a1a;width:200vmax;aspect-ratio:1;scale:4;opacity:.5}@keyframes charge{0%{rotate:0deg}50%,to{rotate:-360deg}}
