.skills-atom{border:1px solid hsl(var(--heroui-divider));background:hsl(var(--heroui-content1) / .5);border-radius:1.5rem;overflow:hidden}.skills-atom__header{cursor:pointer;text-align:left;align-items:center;gap:.5rem;width:100%;padding:.8rem 1.5rem;transition:background-color .16s;display:flex}.skills-atom.is-expanded .skills-atom__header{border-bottom:1px solid hsl(var(--heroui-divider))}.skills-atom__header:hover{background:hsl(var(--heroui-content2) / .24)}.skills-atom__header:focus-visible{outline:2px solid hsl(var(--heroui-focus));outline-offset:-2px}.skills-atom__expand-icon{color:hsl(var(--heroui-default-500));margin-left:auto;transition:color .16s,transform .16s}.skills-atom.is-expanded .skills-atom__expand-icon{color:hsl(var(--heroui-primary));transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.skills-atom__expand-icon{transition:none}}.skills-atom__header h2{letter-spacing:.2em;text-transform:uppercase;opacity:.65;font-size:.75rem;font-weight:700}.skills-atom__status-dot{background:hsl(var(--heroui-primary));width:.5rem;height:.5rem;box-shadow:0 0 10px hsl(var(--heroui-primary) / .8);border-radius:999px}.skills-atom__body{padding:1rem}.skills-atom__legend{grid-template-columns:repeat(3,1fr);gap:.5rem;max-width:48rem;margin:.25rem auto .5rem;display:grid}.skills-atom__legend>button{color:hsl(var(--heroui-default-500));grid-template-columns:.5rem auto .5rem;justify-content:center;align-items:center;gap:.45rem;padding:.45rem;transition:color .2s,opacity .2s;display:grid}.skills-atom__legend>button.is-selected{color:hsl(var(--heroui-foreground))}.skills-atom__legend span{border-radius:50%;width:.4rem;height:.4rem;box-shadow:0 0 10px}.skills-atom__legend strong{font-size:.82rem}.skills-atom__legend button:focus-visible{outline:2px solid hsl(var(--heroui-primary));outline-offset:3px;border-radius:.4rem}.skills-atom__legend small{display:none}.skills-atom__scene{isolation:isolate;width:min(100%, var(--atom-max-width));height:var(--atom-desktop-height);cursor:grab;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;margin:auto;position:relative;overflow:hidden}.skills-atom__scene.is-dragging{cursor:grabbing}.skills-atom__rings,.skills-atom__nodes{width:94%;height:94%;position:absolute;inset:3%}.skills-atom__rings{color:hsl(var(--heroui-default-400));filter:drop-shadow(0 0 4px hsl(var(--heroui-primary) / .15))}.skills-atom__node{background:hsl(var(--heroui-content1) / .96);width:2rem;height:2rem;box-shadow:0 4px 16px hsl(var(--heroui-effect-shadow) / .15);transform-origin:50%;will-change:transform, left, top;border:1px solid;border-radius:999px;justify-content:center;align-items:center;display:flex;position:absolute}.skills-atom__node.is-muted{color:hsl(var(--heroui-default-400));border-color:hsl(var(--heroui-default-400) / .42);background:hsl(var(--heroui-content1) / .72);box-shadow:none}.skills-atom__node svg{flex:none;width:1rem;height:1rem}.skills-atom__node span{pointer-events:none;border:1px solid color-mix(in srgb, var(--skill-node-accent) 48%, transparent);background:hsl(var(--heroui-content1) / .94);width:max-content;max-width:10rem;color:hsl(var(--heroui-foreground));box-shadow:0 4px 14px hsl(var(--heroui-effect-shadow) / .14), 0 0 10px color-mix(in srgb, var(--skill-node-accent) 9%, transparent);border-radius:.5rem;padding:.28rem .48rem;font-size:.72rem;font-weight:600;line-height:1.15;position:absolute;left:calc(100% + .4rem)}.skills-atom__node span:before{content:"";background:color-mix(in srgb, var(--skill-node-accent) 65%, transparent);width:.42rem;height:1px;position:absolute;top:50%;right:100%}.skills-atom__node.label-left span{text-align:right;left:auto;right:calc(100% + .4rem)}.skills-atom__node.label-left span:before{left:100%;right:auto}.skills-atom__nucleus{z-index:1000;width:6.4rem;height:5.7rem;padding:.5rem;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.skills-atom__nucleus button{background:radial-gradient(circle at 32% 25%, hsl(var(--heroui-effect-highlight) / .24), transparent 24%), radial-gradient(circle at 38% 32%, hsl(var(--heroui-content1)), hsl(var(--heroui-content2)) 58%, hsl(var(--heroui-effect-shadow) / .3));border-width:1px;border-radius:999px;place-items:center;font-family:monospace;font-size:.72rem;font-weight:800;transition:opacity .2s,box-shadow .2s;display:grid;position:absolute;overflow:hidden}.skills-atom__nucleus:has(button[aria-pressed=true]) button[aria-pressed=false]{opacity:.4}.skills-atom__interaction-prompt{bottom:var(--atom-prompt-bottom);z-index:900;pointer-events:none;opacity:0;width:5.5rem;height:2.75rem;animation:atom-prompt-reveal .18s ease var(--atom-prompt-delay) forwards;position:absolute;left:50%;transform:translate(-50%)}.skills-atom__prompt-track{background:linear-gradient(90deg, transparent, hsl(var(--heroui-primary) / .55) 20%, hsl(var(--heroui-primary) / .55) 80%, transparent);height:1px;position:absolute;top:50%;left:0;right:0}.skills-atom__prompt-track:before,.skills-atom__prompt-track:after{content:"";border:1px solid hsl(var(--heroui-primary) / .65);background:hsl(var(--heroui-content1));border-radius:50%;width:.3rem;height:.3rem;position:absolute;top:50%;transform:translateY(-50%)}.skills-atom__prompt-track:before{left:.3rem}.skills-atom__prompt-track:after{right:.3rem}.skills-atom__interaction-prompt svg{background:hsl(var(--heroui-content1) / .92);width:1.25rem;height:1.25rem;color:hsl(var(--heroui-primary));filter:drop-shadow(0 3px 7px hsl(var(--heroui-effect-shadow) / .3));animation:atom-prompt-gesture var(--atom-prompt-duration) ease-in-out calc(var(--atom-prompt-delay) + .18s) 2;border-radius:999px;padding:.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-35%)}@keyframes atom-prompt-reveal{to{opacity:1}}@keyframes atom-prompt-gesture{0%,to{transform:translate(-50%,-35%)}35%{transform:translate(calc(-50% - 1.35rem),-35%)}70%{transform:translate(calc(1.35rem - 50%),-35%)}}.skills-atom__disclosure{color:hsl(var(--heroui-primary));justify-content:center;align-items:center;gap:.4rem;margin:1rem auto 0;font-size:.75rem;font-weight:600;display:flex}.skills-atom__footer-controls{justify-content:center;display:flex;position:relative}.skills-atom__mobile-scene{display:none}.skills-atom__disclosure svg{width:1rem;transition:transform .2s}.skills-atom__list{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;grid-template-columns:repeat(3,1fr);gap:1.25rem;width:1px;max-width:54rem;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skills-atom__list.is-open{clip:auto;clip-path:none;white-space:normal;border-top:1px solid hsl(var(--heroui-divider));width:auto;height:auto;margin:1.25rem auto .5rem;padding-top:1.25rem;display:grid;position:static;overflow:visible}.skills-atom__list h3{justify-content:center;align-items:center;gap:.55rem;margin-bottom:.8rem;font-size:.8rem;font-weight:700;display:flex}.skills-atom__list h3:before,.skills-atom__list h3:after{content:"";background:color-mix(in srgb, var(--skills-list-accent) 38%, transparent);width:1.5rem;height:1px}.skills-atom__list ul{flex-wrap:wrap;gap:.4rem;display:flex}.skills-atom__list li{border:1px solid color-mix(in srgb, var(--skills-list-accent) 22%, hsl(var(--heroui-divider)));background:color-mix(in srgb, var(--skills-list-accent) 5%, hsl(var(--heroui-content1) / .72));border-radius:.6rem;padding:.34rem .58rem;font-size:.7rem;transition:border-color .18s,background-color .18s}.skills-atom__list li:hover{border-color:color-mix(in srgb, var(--skills-list-accent) 42%, transparent);background:color-mix(in srgb, var(--skills-list-accent) 9%, hsl(var(--heroui-content1) / .78))}html:not(.dark) .skills-atom__rings{color:hsl(var(--heroui-skills-orbit));filter:drop-shadow(0 0 4px hsl(var(--heroui-skills-orbit) / .12))}html:not(.dark) .skills-atom__legend span{box-shadow:0 0 7px color-mix(in srgb, var(--skill-legend-color) 48%, transparent)}html:not(.dark) .skills-atom__rings polyline[stroke=currentColor]{stroke-opacity:.28}html:not(.dark) .skills-atom__node.is-muted{border-color:hsl(var(--heroui-skills-muted) / .5);background:hsl(var(--heroui-content1) / .94);color:hsl(var(--heroui-skills-muted));opacity:.44!important}html:not(.dark) .skills-atom__node.is-active{background:hsl(var(--heroui-content1));box-shadow:0 4px 14px hsl(var(--heroui-skills-shadow) / .14), 0 0 0 1px color-mix(in srgb, var(--skill-node-accent) 18%, transparent)}html:not(.dark) .skills-atom__nucleus:has(button[aria-pressed=true]) button[aria-pressed=false]{opacity:.56}@media (min-width:600px){.skills-atom__list section{border:1px solid color-mix(in srgb, var(--skills-list-accent) 14%, hsl(var(--heroui-divider)));background:linear-gradient(180deg, color-mix(in srgb, var(--skills-list-accent) 5%, hsl(var(--heroui-content1) / .5)), hsl(var(--heroui-content1) / .24) 42%);text-align:center;border-radius:1rem;padding:1.1rem 1rem 1.2rem}.skills-atom__list ul{justify-content:center}}@media not (min-width:40rem){.skills-atom{border-radius:1rem}.skills-atom__body{padding:.65rem}.skills-atom__legend{grid-template-columns:repeat(2,minmax(0,1fr));gap:.15rem .5rem;margin:.35rem auto .1rem}.skills-atom__legend>button{opacity:.62;grid-template-rows:auto auto;grid-template-columns:max-content;gap:.08rem;padding:.35rem 0}.skills-atom__legend>button:first-child{grid-area:2/1}.skills-atom__legend>button:nth-child(2){grid-area:2/2}.skills-atom__legend>button:nth-child(3){grid-area:1/1/auto/-1;justify-self:center}.skills-atom__legend>button.is-selected{opacity:1}.skills-atom__legend span{display:none}.skills-atom__legend small{text-align:center;opacity:.8;font-family:monospace;font-size:.58rem;font-weight:700;line-height:1;display:block}.skills-atom__legend strong{text-align:center;white-space:nowrap;font-size:.75rem;line-height:1.2}.skills-atom__desktop-scene{display:none}.skills-atom__mobile-scene{width:100%;height:var(--atom-mobile-height);cursor:grab;touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;display:block;position:relative;overflow:hidden}.skills-atom__mobile-scene.is-dragging{cursor:grabbing}.skills-atom__mobile-ring{top:var(--mobile-orbit-center-y);width:var(--mobile-orbit-width);height:var(--mobile-orbit-height);border:1px solid hsl(var(--heroui-primary) / .28);box-shadow:0 0 22px hsl(var(--heroui-primary) / .05);border-radius:50%;position:absolute;left:50%;transform:translate(-50%,-50%)}.skills-atom__mobile-node{background:hsl(var(--heroui-content1) / .96);width:2rem;height:2rem;box-shadow:0 4px 14px hsl(var(--heroui-effect-shadow) / .18);border:1px solid;border-radius:50%;place-items:center;display:grid;position:absolute}.skills-atom__mobile-node svg{width:1rem;height:1rem}.skills-atom__mobile-label{z-index:50;--mobile-label-translate-x:-50%;max-width:9.5rem;transform:translate(var(--mobile-label-translate-x), -50%);border:1px solid color-mix(in srgb, var(--mobile-label-accent) 48%, transparent);background:hsl(var(--heroui-content1) / .96);color:hsl(var(--heroui-foreground));text-align:center;box-shadow:0 4px 14px hsl(var(--heroui-effect-shadow) / .18), 0 0 10px color-mix(in srgb, var(--mobile-label-accent) 10%, transparent);border-radius:.5rem;padding:.35rem .58rem;font-size:.72rem;font-weight:600;line-height:1.15;animation:.18s ease-out mobile-skill-label-in;position:absolute}.skills-atom__mobile-label:after{content:"";background:color-mix(in srgb, var(--mobile-label-accent) 65%, transparent);width:1px;height:.85rem;position:absolute}.skills-atom__mobile-label--front:after{top:-.85rem;left:50%}.skills-atom__mobile-nucleus{z-index:30;top:var(--mobile-orbit-center-y);width:6.4rem;height:5.7rem;position:absolute;left:50%;transform:translate(-50%,-50%)}.skills-atom__mobile-nucleus button{background:radial-gradient(circle at 32% 25%, hsl(var(--heroui-effect-highlight) / .24), transparent 24%), radial-gradient(circle at 38% 32%, hsl(var(--heroui-content1)), hsl(var(--heroui-content2)) 58%, hsl(var(--heroui-effect-shadow) / .3));border-width:1px;border-radius:50%;place-items:center;font-family:monospace;font-size:.72rem;font-weight:800;display:grid;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.skills-atom__mobile-nucleus:has(button[aria-pressed=true]) button[aria-pressed=false]{opacity:.4}.skills-atom__list{grid-template-columns:none}.skills-atom__list.is-open{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;touch-action:pan-x pan-y;grid-auto-columns:88%;grid-auto-flow:column;gap:.75rem;margin-left:-.65rem;margin-right:-.65rem;padding-bottom:.35rem;padding-left:.65rem;padding-right:.65rem;overflow-x:auto}.skills-atom__list.is-open::-webkit-scrollbar{display:none}.skills-atom__list section{border:1px solid color-mix(in srgb, var(--skills-list-accent) 18%, hsl(var(--heroui-divider)));background:linear-gradient(180deg, color-mix(in srgb, var(--skills-list-accent) 6%, hsl(var(--heroui-content1) / .68)), hsl(var(--heroui-content1) / .5));text-align:center;scroll-snap-align:center;scroll-snap-stop:always;border-radius:.85rem;min-width:0;padding:.85rem}.skills-atom__list section ul{justify-content:center}}@keyframes mobile-skill-label-in{0%{opacity:0;transform:translate(var(--mobile-label-translate-x), -42%)}}@media (prefers-reduced-motion:reduce){.skills-atom *{scroll-behavior:auto!important;transition-duration:.01ms!important}.skills-atom__interaction-prompt,.skills-atom__interaction-prompt svg{opacity:1;animation:none}}
