.infinite-menu{position:relative;width:100%;height:100%;overflow:hidden;outline:none;container-type:inline-size;color:var(--infinite-menu-text);-webkit-tap-highlight-color:transparent}.infinite-menu:focus-visible{box-shadow:inset 0 0 0 2px var(--infinite-menu-text)}.infinite-menu__canvas{position:absolute;inset:0;display:block;width:100%;height:100%;cursor:grab;touch-action:none}.infinite-menu__canvas:active{cursor:grabbing}.infinite-menu__info,.infinite-menu__custom{position:absolute;inset:0;pointer-events:none}.infinite-menu__title,.infinite-menu__description,.infinite-menu__action{transition:opacity .45s ease,transform .45s cubic-bezier(.22,1,.36,1)}.infinite-menu__title{position:absolute;top:50%;right:calc(50% + var(--infinite-menu-tile, 160px) + 28px);max-width:calc(50% - var(--infinite-menu-tile, 160px) - 48px);margin:0;font-size:clamp(1.2rem,calc((50cqw - var(--infinite-menu-tile, 160px)) * .2),3.4rem);font-weight:600;line-height:1.05;letter-spacing:-.03em;text-align:right;text-shadow:var(--infinite-menu-shadow);transform:translateY(-50%);text-wrap:balance}.infinite-menu__description{position:absolute;top:50%;left:calc(50% + var(--infinite-menu-tile, 160px) + 28px);max-width:min(22ch,calc(50% - var(--infinite-menu-tile, 160px) - 48px));margin:0;font-size:clamp(.85rem,1.5cqw,1.05rem);line-height:1.55;text-shadow:var(--infinite-menu-shadow);opacity:.72;white-space:pre-line;transform:translateY(-50%)}.infinite-menu__action{position:absolute;bottom:7%;left:50%;display:grid;place-items:center;width:52px;height:52px;padding:0;border:none;border-radius:50%;background:var(--infinite-menu-accent);color:var(--infinite-menu-on-accent);cursor:pointer;pointer-events:auto;transform:translate(-50%)}.infinite-menu__action:hover{transform:translate(-50%) scale(1.06)}.infinite-menu__action:focus-visible{outline:2px solid var(--infinite-menu-accent);outline-offset:3px}.infinite-menu__info[data-moving=true] .infinite-menu__title{opacity:0;transform:translate(16px,-50%);transition-duration:.18s}.infinite-menu__info[data-moving=true] .infinite-menu__description{opacity:0;transform:translate(-16px,-50%);transition-duration:.18s}.infinite-menu__info[data-moving=true] .infinite-menu__action{opacity:0;pointer-events:none;transform:translate(-50%,16px) scale(.6);transition-duration:.18s}.infinite-menu__info[data-layout=stacked] .infinite-menu__title{top:auto;right:18px;bottom:calc(50% + var(--infinite-menu-tile, 140px) + 14px);left:18px;max-width:none;font-size:clamp(1.7rem,8cqw,2.2rem);text-align:center;transform:none}.infinite-menu__info[data-layout=stacked] .infinite-menu__description{top:calc(50% + var(--infinite-menu-tile, 140px) + 14px);right:20px;bottom:auto;left:20px;max-width:none;font-size:clamp(.95rem,4.2cqw,1.1rem);line-height:1.4;text-align:center;white-space:pre-line;opacity:.9;transform:none}.infinite-menu__info[data-layout=stacked] .infinite-menu__action{right:20px;bottom:22px;left:auto;transform:none}.infinite-menu__info[data-layout=stacked] .infinite-menu__action:hover{transform:scale(1.06)}.infinite-menu__info[data-layout=stacked][data-moving=true] .infinite-menu__title,.infinite-menu__info[data-layout=stacked][data-moving=true] .infinite-menu__description{transform:translateY(12px)}.infinite-menu__info[data-layout=stacked][data-moving=true] .infinite-menu__action{transform:translateY(12px) scale(.6)}
