.ntledm-host{position:relative}.ntledm-layer{position:absolute;inset:0;pointer-events:none;z-index:9;overflow:hidden;border-radius:inherit}.ntledm-layer.wire{outline:1px solid rgba(80,80,90,.16);outline-offset:-2px}.ntledm-bulb{position:absolute;display:block;width:var(--sz);height:var(--sz);background:currentColor;box-shadow:0 0 var(--glow) currentColor;opacity:var(--op);animation:ntledmPulse var(--speed) ease-in-out infinite}.ntledm-round{border-radius:50%}.ntledm-square{border-radius:2px}.ntledm-diamond{border-radius:2px;transform:rotate(45deg)}@keyframes ntledmPulse{0%,100%{opacity:calc(var(--op)*.25)}50%{opacity:var(--op)}}.ntledm-still .ntledm-bulb{animation:none}.ntledm-breathing .ntledm-bulb,.ntledm-soft-breathe .ntledm-bulb{animation-duration:calc(var(--speed)*1.5)}.ntledm-paused .ntledm-bulb,.is-paused .ntledm-bulb{animation-play-state:paused!important}.ntledm-toggle{position:absolute;top:12px;right:12px;z-index:12;border:1px solid #777;border-radius:6px;background:#fff;color:#222;padding:8px;cursor:pointer}.ntledm-toggle:focus-visible{outline:3px solid #bc7a24;outline-offset:2px}@media(prefers-reduced-motion:reduce){.ntledm-bulb{animation:none!important}}

/* RGB rope: stationary illuminated tube behind individual LED points. */
.ntledm-rope-rail{position:absolute;display:block;border:1px solid rgba(255,255,255,.65);border-radius:999px;opacity:var(--op);background:linear-gradient(90deg,#ff3737,#ffca35,#37e66d,#36bfff,#a557ff,#ff55be);box-shadow:0 0 var(--glow) rgba(150,180,255,.65),inset 0 0 3px #fff;animation:ntledmRope var(--speed) ease-in-out infinite;pointer-events:none}
.ntledm-rope-t,.ntledm-rope-b{left:5px;right:5px;height:var(--rope-width)}.ntledm-rope-t{top:5px}.ntledm-rope-b{bottom:5px}
.ntledm-rope-l,.ntledm-rope-r{top:5px;bottom:5px;width:var(--rope-width);background:linear-gradient(180deg,#ff3737,#ffca35,#37e66d,#36bfff,#a557ff,#ff55be)}.ntledm-rope-l{left:5px}.ntledm-rope-r{right:5px}
.ntledm-rgb-rope .ntledm-bulb{z-index:1;border:1px solid rgba(255,255,255,.7);box-shadow:0 0 var(--glow) currentColor,inset 0 0 2px #fff}
@keyframes ntledmRope{0%,100%{opacity:calc(var(--op)*.55)}50%{opacity:var(--op)}}
.ntledm-paused .ntledm-rope-rail,.is-paused .ntledm-rope-rail{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.ntledm-rope-rail{animation:none!important}}

.ntledm-designs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:760px}.ntledm-design-card{display:grid;gap:14px;padding:20px 16px;background:#20262d;color:#fff;border:3px solid transparent;border-radius:12px;cursor:pointer;text-align:left}.ntledm-design-card[aria-pressed="true"]{border-color:#2271b1;outline:2px solid #fff;outline-offset:-6px}.ntledm-design-card:focus-visible{outline:3px solid #d28718;outline-offset:3px}.ntledm-swatch{height:12px;display:block;border-radius:20px;border:1px solid #fff8;box-shadow:0 0 14px #ffffff80}.ntledm-swatch-rgb-rope{background:linear-gradient(90deg,#ff3737,#ffca35,#37e66d,#36bfff,#a557ff,#ff55be)}.ntledm-swatch-rope-warm{background:linear-gradient(90deg,#ffe4b5,#ffcf91)}.ntledm-swatch-rope-cool{background:linear-gradient(90deg,#95dfff,#e8faff)}.ntledm-swatch-rope-gold{background:linear-gradient(90deg,#f4c34f,#fff0a0)}.ntledm-swatch-rope-rose{background:linear-gradient(90deg,#ff9dcc,#ffd5e7)}.ntledm-swatch-rope-white{background:linear-gradient(90deg,#ffffff,#eef4ff)}@media(max-width:600px){.ntledm-designs{grid-template-columns:repeat(2,minmax(0,1fr))}}
